RelativeLayout支持多种屏幕尺寸
问题描述:
我有RelativeLayout
应该支持多种屏幕。问题是:这种方法不好吗?因为基本上我指定了框的宽度和大小,所以我将不得不为多个屏幕大小更改这些数字(small
,large
,xlarge
),并且它们仍然不适合。有更好的方法吗?这是我的布局:RelativeLayout支持多种屏幕尺寸
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/root"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/background" >
<RelativeLayout
android:id="@+id/wrappedBoxes"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center" >
<ImageView
android:id="@+id/imgLeft"
android:layout_width="50dp"
android:layout_height="60dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:paddingRight="7dp"
android:scaleType="fitXY" />
<TextView
android:id="@+id/txtBlock1"
android:layout_width="114dp"
android:layout_height="71dp"
android:layout_toRightOf="@+id/imgLeft"
android:background="#30869C"
android:clickable="true"
android:gravity="bottom"
android:padding="1dp"
android:textColor="#fff" >
</TextView>
<RelativeLayout
android:id="@+id/txtBlock2"
android:layout_width="114dp"
android:layout_height="71dp"
android:layout_marginLeft="7dp"
android:layout_toRightOf="@+id/txtBlock1"
android:background="#30869C"
android:clickable="true"
android:orientation="vertical"
android:padding="1dp" >
<TextView
android:id="@+id/recKF1Block"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="top"
android:paddingTop="0dp"
android:textColor="#fff" />
<TextView
android:id="@+id/recKF1BlockOutOfAmount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/recKF1Block"
android:text="dummy of dummy" />
</RelativeLayout>
<TextView
android:id="@+id/txt9876Block"
android:layout_width="114dp"
android:layout_height="71dp"
android:layout_marginLeft="7dp"
android:layout_toRightOf="@+id/txtBlock2"
android:clickable="true"
android:gravity="bottom"
android:height="71dp"
android:padding="1dp"
android:textColor="#fff" >
</TextView>
<TextView
android:id="@+id/txt343477Block"
android:layout_width="114dp"
android:layout_height="71dp"
android:layout_marginLeft="7dp"
android:layout_toRightOf="@+id/txt9876Block"
android:background="#30869C"
android:gravity="top"
android:padding="1dp"
android:text=""
android:textColor="#fff" >
</TextView>
<TextView
android:id="@+id/txt111Block"
android:layout_width="114dp"
android:layout_height="71dp"
android:layout_alignRight="@+id/txtBlock1"
android:layout_below="@+id/txtBlock1"
android:layout_marginTop="7dp"
android:background="#30869C"
android:clickable="true"
android:gravity="bottom"
android:padding="1dp"
android:textColor="#fff" >
</TextView>
<TextView
android:id="@+id/txtS555Sett"
android:layout_width="114dp"
android:layout_height="71dp"
android:layout_alignLeft="@+id/txtBlock2"
android:layout_below="@+id/txtBlock2"
android:layout_marginTop="7dp"
android:layout_toRightOf="@+id/txt111Block"
android:background="#30869C"
android:gravity="bottom"
android:padding="1dp"
android:textColor="#fff" >
</TextView>
<TextView
android:id="@+id/txtMm22"
android:layout_width="237dp"
android:layout_height="72dp"
android:layout_alignLeft="@+id/txt9876Block"
android:layout_below="@+id/txt9876Block"
android:layout_marginTop="7dp"
android:layout_toRightOf="@+id/txtS555Sett"
android:adjustViewBounds="true"
android:textColor="#000" >
</TextView>
<TextView
android:id="@+id/imgW999"
android:layout_width="114dp"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/txtMm22"
android:layout_alignTop="@+id/txt343477Block"
android:layout_marginLeft="7dp"
android:layout_toRightOf="@+id/txt343477Block"
android:gravity="bottom"
android:textColor="#fff" >
</TextView>
<ImageView
android:id="@+id/imgRi8977"
android:layout_width="50dp"
android:layout_height="60dp"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/imgW999"
android:scaleType="fitXY" />
</RelativeLayout>
</RelativeLayout>
答
而不是硬编码的值,使用dimen文件这个pupose。 为值指定不同的文件夹,如值大等,并创建维度文件并根据屏幕大小放置特定值。它应该帮助你。
答
嘿,请创建这样一个多屏幕尺寸布局的文件夹,这个
布局小,布局大,布局XLARGE所以ü复制您的布局XML文件中,这些文件夹,现在ü可以编辑指定盒子的宽度和大小。