Android 相对布局比例?
我想创建一个布局,它显示在所有设备上,就像它在我的手机上一样。我试着让它适用于平板电脑,但它看起来很糟糕。 下面是它的外观: 但以下是它在平板电脑模拟器上的显示方式: 我该怎么做才能让它像在手机上一样出现在所有屏幕尺寸上?我目前正在使用RelativeLayout。 这是我的密码:Android 相对布局比例?,android,android-layout,android-relativelayout,Android,Android Layout,Android Relativelayout,我想创建一个布局,它显示在所有设备上,就像它在我的手机上一样。我试着让它适用于平板电脑,但它看起来很糟糕。 下面是它的外观: 但以下是它在平板电脑模拟器上的显示方式: 我该怎么做才能让它像在手机上一样出现在所有屏幕尺寸上?我目前正在使用RelativeLayout。 这是我的密码: <?xml version="1.0" encoding="UTF-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout02"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ImageView
android:id="@+id/terranlogo1"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_centerHorizontal="true"
android:src="@drawable/terranlogo" />
<ImageView
android:id="@+id/protosslogo1"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignParentRight="true"
android:src="@drawable/protosslogo" />
<ImageView
android:id="@+id/zerglogo1"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignParentLeft="true"
android:src="@drawable/zerglogo" />
<CheckBox
android:id="@+id/ck_t1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/terranlogo1"
android:layout_centerHorizontal="true" />
<CheckBox
android:id="@+id/ck_p1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/protosslogo1"
android:layout_below="@id/protosslogo1"
android:layout_marginLeft="25dp" />
<CheckBox
android:id="@+id/ck_z1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@id/zerglogo1"
android:layout_below="@id/zerglogo1"
android:layout_marginLeft="25dp" />
<ImageView
android:id="@+id/terranlogo2"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_below="@id/ck_t1"
android:layout_centerHorizontal="true"
android:src="@drawable/terranlogo" />
<ImageView
android:id="@+id/protosslogo2"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignParentRight="true"
android:layout_below="@id/ck_p1"
android:src="@drawable/protosslogo" />
<ImageView
android:id="@+id/zerglogo2"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignParentLeft="true"
android:layout_below="@id/ck_z1"
android:src="@drawable/zerglogo" />
<CheckBox
android:id="@+id/ck_t2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/terranlogo2"
android:layout_centerHorizontal="true" />
<CheckBox
android:id="@+id/ck_p2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/protosslogo1"
android:layout_below="@id/protosslogo2"
android:layout_marginLeft="25dp" />
<CheckBox
android:id="@+id/ck_z2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@id/zerglogo1"
android:layout_below="@id/zerglogo2"
android:layout_marginLeft="25dp" />
<TextView
android:id="@+id/textView4"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ck_t2"
android:layout_marginRight="18dp"
android:layout_marginTop="17dp"
android:gravity="center_vertical|center_horizontal"
android:text="Choose your opponets race(s) and your race(s)"
android:textSize="30dp" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:text="Game Length"
android:textSize="15dp" />
<Spinner
android:id="@+id/s_answertime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView1"
android:layout_alignParentLeft="true"
android:layout_below="@id/textView4" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/terranlogo2"
android:layout_alignParentBottom="true"
android:gravity="center_horizontal"
android:text="Mistakes Allowed"
android:textSize="15dp" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:text="Answer Time"
android:textSize="15dp" />
<Spinner
android:id="@+id/s_mistakenumber"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/s_answertime"
android:layout_alignTop="@+id/s_answertime"
android:layout_toLeftOf="@+id/s_gametime"
android:layout_toRightOf="@+id/s_answertime" />
<Spinner
android:id="@+id/s_gametime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView3"
android:layout_alignLeft="@+id/protosslogo2"
android:layout_alignTop="@+id/s_mistakenumber" />
</RelativeLayout>
非常感谢您的帮助,Lijap。由于您将layout_设置在上方,layout_设置在下方,因此微调器会拉伸以适应这两个条件。移除其中一个(可能是上面的布局),并为其设置合理的固定高度(75dp?)
此外,你最左边/最右边的图标/复选框如果有一个健康的边距(左/右=50dp),可能会看起来更好,以防止它们一直延伸到屏幕边缘。你也应该使用真正的设备来测试你的应用程序,但这实际上很简单,你应该用LinearLayout来划分它,然后使用布局权重。我不能用LinearLayout让它看起来像我想要的那样。我试了一次又一次,我想我做得不对,但我想不出来。