我有一个Android应用,其目标版本为Android 2.2。我的应用程序的小部件旨在占据屏幕的整个宽度。窗口小部件有两列,每列有两个水平文本视图,字体大小为15sp。在大多数设备上,小部件占据了屏幕的整个宽度,看起来很好。但是,在某些设备上,例如Nexus 5,Xperia Z3,小部件不会占据整个屏幕,文本视图也会重叠。
我的小部件的layout_width是match_parent。有没有办法强制小部件占据整个屏幕或任何其他方式,以确保文本视图不重叠?
窗口小部件提供程序
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="250dp"
android:minHeight="110dp"
android:updatePeriodMillis="0"
android:initialLayout="@layout/xyz"
>
</appwidget-provider>
下面是我的布局文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="7dp"
android:orientation="vertical" >
<LinearLayout
android:layout_width=“match_parent"
android:layout_height=“match_parent"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="100" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingTop="0dp"
android:paddingBottom="0dp"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:orientation="vertical" >
<GridView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="2"
android:padding="0dp"
android:layout_margin="0dp"
android:listSelector="@null">
</GridView>
</LinearLayout>
</RelativeLayout>
</LinearLayout>
</RelativeLayout>
上面布局中的GridView具有以下子项:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:baselineAligned="false"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="fill_parent"
android:paddingTop="3dp"
android:paddingBottom="3dp"
android:paddingLeft="7dp"
android:paddingRight="7dp"
android:layout_weight="1"
android:clickable="true"
android:focusable="true"
android:orientation="vertical">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text=“Text11111”
android:textSize="15sp"
android:layout_weight="1"
android:textColor="@color/black" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text=“Text22222”
android:textSize="15sp"
android:layout_weight="1"
android:textColor="@color/black" />
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingTop="-2dp">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text=“Text33333”
android:textSize="15sp"
android:textColor="@color/black" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text=“Text44444”
android:textSize="15sp"
android:textColor="@color/black" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>