Android TextView在Nexus 4 4.4.2中未显示,改变重力可以修复它



我收到了nexus 4用户的投诉。更新到 4.4.2 后,他的文本视图从屏幕上消失了。我发现,如果我删除android:gravity="center",它又回来了。另外,如果我把它变小,它也回来了。为什么这种情况只发生在这台设备上,有修复吗?我希望大文本留在中心。它位于 RelativeLayout 中,下面是 xml 代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/cyan"
android:orientation="vertical" >

<Button
    android:id="@+id/sync_button"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:text="@string/sync_button"
    android:textSize="@dimen/button_text_size" />
<Button
    android:id="@+id/clear_button"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_above="@+id/sync_button"
    android:layout_alignParentRight="true"
    android:text="@string/clear_button"
    android:textSize="@dimen/button_text_size" />
<Button
    android:id="@+id/prog_button"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:text="@string/prog_button"
    android:textSize="@dimen/button_text_size" />
<Button
    android:id="@+id/start_button"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignTop="@+id/clear_button"
    android:text="@string/start_button"
    android:textSize="@dimen/button_text_size" />

<TextView
    android:id="@+id/timer_text"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_centerVertical="true"
    android:ellipsize="none"
    android:gravity="center"
    android:includeFontPadding="false"
    android:text="@string/_5_00"
    android:textColor="@color/black"
    android:textStyle="bold" />

<TextView
    android:id="@+id/spdTitle"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:ellipsize="marquee"
    android:gravity="left"
    android:singleLine="true"
    android:text="@string/speed"
    android:textColor="@color/black"
    android:textSize="@dimen/small_text_size"
    android:textStyle="bold" />
<TextView
    android:id="@+id/status_text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
     android:layout_alignBottom="@+id/timer_text"
  android:gravity="right"
    android:singleLine="true"
    android:textColor="@color/black"
    android:textSize="20dip"
    android:textStyle="bold" />
<TextView
    android:id="@+id/accuracy_text"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignBottom="@+id/timer_text"
    android:gravity="left"
    android:singleLine="true"
    android:text="@string/accuracy"
    android:textColor="@color/black"
    android:textSize="20dip"
    android:textStyle="bold" />
<TextView
    android:id="@+id/ttlTitle"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:gravity="left"
    android:singleLine="true"
    android:text="@string/time_to_line"
    android:textColor="@color/black"
    android:textSize="@dimen/small_text_size"
    android:textStyle="bold" />
<TextView
    android:id="@+id/timetoline_text"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:ellipsize="none"
    android:gravity="center"
    android:singleLine="true"
    android:text="@string/empty"
    android:textColor="@color/black"
    android:textSize="@dimen/fields_text_size"
    android:textStyle="bold" />
<TextView
    android:id="@+id/ttkTitle"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/timetoline_text"
    android:gravity="left"
    android:singleLine="true"
    android:text="@string/time_to_kill"
    android:textColor="@color/black"
    android:textSize="@dimen/small_text_size"
    android:textStyle="bold" />
<TextView
    android:id="@+id/distance_text"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_alignTop="@+id/ttkTitle"
    android:ellipsize="none"
    android:gravity="center"
    android:singleLine="true"
    android:text="@string/empty"
    android:textColor="@color/black"
    android:textSize="@dimen/fields_text_size"
    android:textStyle="bold" />
<TextView
    android:id="@+id/dstTitle"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_alignTop="@+id/distance_text"
    android:gravity="left"
    android:singleLine="true"
    android:text="@string/dist"
    android:textColor="@color/black"
    android:textSize="@dimen/small_text_size"
    android:textStyle="bold" />
<TextView
    android:id="@+id/ttk_text"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignTop="@+id/ttkTitle"
    android:ellipsize="none"
    android:gravity="center"
    android:singleLine="true"
    android:text="@string/empty"
    android:textColor="@color/black"
    android:textSize="@dimen/fields_text_size"
    android:textStyle="bold" />
<TextView
    android:id="@+id/speed_text"
    android:layout_width="@dimen/cell_size"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:ellipsize="none"
    android:gravity="center"
    android:singleLine="true"
    android:text="@string/empty"
    android:textColor="@color/black"
    android:textSize="@dimen/fields_text_size"
    android:textStyle="bold" />
<TextView
    android:id="@+id/time_text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/ttk_text"
    android:layout_alignParentLeft="true"
    android:gravity="right"
    android:text=""
    android:textColor="@color/black"
    android:textSize="@dimen/small_text_size"
    android:textStyle="bold" />

我通过以下方式解决了它:

if(android.os.Build.VERSION.SDK_INT>=19)timerTextView.setGravity(android.view.Gravity.LEFT);

这有帮助,但不是解决方案,因为文本是留下的,并且在所有 4.4. 设备上都会发生变化。问题在于我只知道Nexus 4

xml中包含以下内容,它应该将大文本固定在中心

android:includeFontPadding="false"

最新更新