Android:针对不同屏幕尺寸的按钮方向

时间:2014-01-18 20:11:38

标签: android android-layout android-button

我的按钮布局有问题。

我制作了"小,正常,大,xlarge"布局文件夹。

但仍然在某些设备上按钮混合在一起!

当我使用设置eclipse查看我的布局时,我可以看到问题但我无法知道设备的尺寸。

我的问题是:任何人都可以告诉我这些设备的尺寸,或者我可以为每个设备制作布局吗?

图像中的设备自爆

http://goo.gl/bss3Ot

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/mainnati"
    android:gravity="center_horizontal" >


>
        <Button

        android:id="@+id/b_info"
        android:layout_width="220dp"
        android:layout_height="50dp"
        android:layout_centerVertical="true"
        android:background="@drawable/info" />



    <Button
        android:id="@+id/b_pass"
        android:layout_width="220dp"
        android:layout_height="50dp"
        android:layout_alignLeft="@+id/b_comp"
        android:layout_below="@+id/b_comp"
        android:layout_marginTop="350dp"
        android:background="@drawable/pass" />

</RelativeLayout>

1 个答案:

答案 0 :(得分:0)

两件事:我看到两个按钮 第二个位于下方,并与代码中不存在的一个左对齐(b_comp) 所以,我想它应该引用 b_info

而且,而不是centerVertical,我为第一个Button(b_info)设置了centerInParent(也是水平居中)。
我将使用centerHorizo​​ntal作为下方的Button,而不是alignLeft。

所以,毕竟我的布局文件是:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/mainnati"
    android:gravity="center_horizontal" >
    >
    <Button
        android:id="@+id/b_info"
        android:layout_width="220dp"
        android:layout_height="50dp"
        android:layout_centerInParent="true"
        android:background="@drawable/info" />
    <Button
        android:id="@+id/b_pass"
        android:layout_width="220dp"
        android:layout_height="50dp"
        android:layout_centerHorizontal="true"
        android:layout_below="@id/b_info"
        android:background="@drawable/pass" />
</RelativeLayout>