我收到了来自 nexus 4 用户的投诉。更新到 4.4.2 后,他的 textview 从屏幕上消失了。我发现如果我删除 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