0

正如我在这里发布的how-can-i-create-layout-for-both-320dp-and-360dp。在那个问题中,我举了一个关于两个按钮的简单示例。但是现在我已经有了 320dp 的布局,但我无法像 Motorola Atrix 那样创建 360dp 的布局。因为给出的解决方案是与 LinearLayout 相关的,而我的布局现在是相对的。如何避免或填补右边的空白?

布局.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@drawable/bg_tapfast" >

    <ImageView 
        android:id="@+id/img_logomaior"
        android:layout_width="@dimen/default_width_img_logomaior"
        android:layout_height="@dimen/default_height_img_logomaior"
        android:src="@drawable/img_logomaior"
        android:layout_marginTop="@dimen/margin_top_img_logomaior"
        android:layout_marginLeft="@dimen/margin_left_img_logomaior"
        android:layout_alignParentLeft="true" />    

    <ImageView 
        android:id="@+id/img_mode_tapcolor"
        android:layout_width="@dimen/default_width_mode_tapcolor"
        android:layout_height="@dimen/default_height_mode_tapcolor"
        android:src="@drawable/mode_tapcolor"
        android:layout_marginTop="@dimen/margin_top_mode_tapcolor"
        android:layout_marginLeft="@dimen/margin_left_mode_tapcolor" />     

    <ImageView 
        android:id="@+id/img_mode_tapname"
        android:layout_width="@dimen/default_width_mode_tapname"
        android:layout_height="@dimen/default_height_mode_tapname"
        android:src="@drawable/mode_tapname"
        android:layout_marginTop="@dimen/margin_top_mode_tapname"
        android:layout_marginLeft="@dimen/margin_left_mode_tapname" />       

     <ImageView 
        android:id="@+id/img_mode_tapgroup"
        android:layout_width="@dimen/default_width_mode_tapgroup"
        android:layout_height="@dimen/default_height_mode_tapgroup"
        android:src="@drawable/mode_tapgroup"
        android:layout_marginTop="@dimen/margin_top_mode_tapgroup"
        android:layout_marginLeft="@dimen/margin_left_mode_tapgroup" />     

     <ImageView 
        android:id="@+id/img_tap_2be"
        android:layout_width="@dimen/default_width_tap_2be"
        android:layout_height="@dimen/default_width_tap_2be"
        android:src="@drawable/tap_2be"
        android:layout_alignParentBottom="true"
        android:layout_marginLeft="@dimen/margin_left_tap_2be" />

     <ImageView 
        android:id="@+id/img_bt_howtoplay"
        android:layout_width="@dimen/default_width_bt_howtoplay"
        android:layout_height="@dimen/default_height_bt_howtoplay"      
        android:src="@drawable/bt_howtoplay"        
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true" />

</RelativeLayout>

摩托罗拉 Atrix

摩托罗拉 Atrix

三星盖乐世 SII

三星盖乐世 SII

4

2 回答 2

0

您必须为我发布您的代码才能确定。

但是您应该能够将这样的属性添加到您的 RelativeLayout:

android:gravity="center_horizontal"

编辑:我认为,如果您将 3 个 ImageViews 放在它们自己的布局中并将顶级父级上的重力设置为水平中心,它将使您的所有 ImageViews 相对于彼此保持在相同的位置,但它也会使它们消失超过一些,因此无论您在哪个设备上运行,它们都居中。

像这样的东西:

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


    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        >
    <ImageView 
        android:id="@+id/img_logomaior"
        android:layout_width="@dimen/default_width_img_logomaior"
        android:layout_height="@dimen/default_height_img_logomaior"
        android:src="@drawable/img_logomaior"
        android:layout_marginTop="@dimen/margin_top_img_logomaior"
        android:layout_marginLeft="@dimen/margin_left_img_logomaior"
        android:layout_alignParentLeft="true" />    

    <ImageView 
        android:id="@+id/img_mode_tapcolor"
        android:layout_width="@dimen/default_width_mode_tapcolor"
        android:layout_height="@dimen/default_height_mode_tapcolor"
        android:src="@drawable/mode_tapcolor"
        android:layout_marginTop="@dimen/margin_top_mode_tapcolor"
        android:layout_marginLeft="@dimen/margin_left_mode_tapcolor" />     

    <ImageView 
        android:id="@+id/img_mode_tapname"
        android:layout_width="@dimen/default_width_mode_tapname"
        android:layout_height="@dimen/default_height_mode_tapname"
        android:src="@drawable/mode_tapname"
        android:layout_marginTop="@dimen/margin_top_mode_tapname"
        android:layout_marginLeft="@dimen/margin_left_mode_tapname" />       

     <ImageView 
        android:id="@+id/img_mode_tapgroup"
        android:layout_width="@dimen/default_width_mode_tapgroup"
        android:layout_height="@dimen/default_height_mode_tapgroup"
        android:src="@drawable/mode_tapgroup"
        android:layout_marginTop="@dimen/margin_top_mode_tapgroup"
        android:layout_marginLeft="@dimen/margin_left_mode_tapgroup" />     

     <ImageView 
        android:id="@+id/img_tap_2be"
        android:layout_width="@dimen/default_width_tap_2be"
        android:layout_height="@dimen/default_width_tap_2be"
        android:src="@drawable/tap_2be"
        android:layout_alignParentBottom="true"
        android:layout_marginLeft="@dimen/margin_left_tap_2be" />

     <ImageView 
        android:id="@+id/img_bt_howtoplay"
        android:layout_width="@dimen/default_width_bt_howtoplay"
        android:layout_height="@dimen/default_height_bt_howtoplay"      
        android:src="@drawable/bt_howtoplay"        
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true" />


     </RelativeLayout>

</RelativeLayout>
于 2012-06-20T00:00:45.440 回答