0

私のアプリでは、デザインに相対レイアウトを使用しています。アクティビティでは、画面の下部に 4 つのボタンがあります。私のxmlコード(ランドスケープ)は、すべてのデバイス画面に適していません。図に示すように、ボタン間のスペースが広くなります。すべての解像度の画面 (横) に適したレイアウトを設計する方法。

レイアウトイメージは: ここに画像の説明を入力

私のxml:

<RelativeLayout android:id="@+id/relativeLayout1"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:background="#0000FF"
xmlns:android="http://schemas.android.com/apk/res/android">


<RelativeLayout android:layout_width="fill_parent"
    android:layout_gravity="bottom" android:layout_alignParentBottom="true"
    android:background="@drawable/applicarion_bar" android:layout_height="wrap_content"
    android:id="@+id/relativeLayout4">

        <ImageButton android:id="@+id/homeimageButton2"
            android:layout_alignParentLeft="true"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:background="@drawable/festival_btn" />

        <ImageButton android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/homeimageButton2"
            android:layout_marginLeft="60dp"
            android:layout_width="wrap_content" android:background="@drawable/search_btn"
            android:id="@+id/homeimageButton3"></ImageButton>
        <TextView android:id="@+id/homecalendar4" android:text="MAR 20"
            android:layout_toRightOf="@+id/homeimageButton3"
            android:gravity="center"
            android:textSize="10dp"
            android:layout_marginLeft="60dp"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:background="@drawable/calendar_btn" />
        <ImageButton android:id="@+id/homeimageButton5"
            android:layout_alignParentRight="true"
            android:layout_marginLeft="10dp"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:background="@drawable/favorite_btn" />

</RelativeLayout>

4

3 に答える 3

1

relativeLayout4 を次のように置き換えます

    <LinearLayout android:id="@+id/put_id_of_ll"
        android:orientation="horizontal" android:background="#012C58"
        android:paddingLeft="4.0dip" android:paddingTop="5.0dip"
        android:paddingRight="4.0dip" android:paddingBottom="1.0dip"
        android:layout_width="fill_parent" android:layout_height="wrap_content"
        android:layout_alignParentBottom="true">
              <ImageButton android:id="@+id/homeimageButton2"
                android:layout_width="0.0dip"
                android:text="ImageButton"
                android:background="@drawable/festival_btn"
                android:layout_weight="1.0"
                android:layout_height="wrap_content"
                android:padding="10dp"
                android:layout_marginBottom="3dip"
                android:layout_marginLeft="2dip" />
            <ImageButton android:id="@+id/homeimageButton3"     
android:background="@drawable/search_btn"
                android:layout_width="0.0dip"
                android:text="btn2"
                android:layout_weight="1.0"
                android:layout_height="wrap_content"
                android:padding="10dp"
                android:layout_marginBottom="3dip"
                android:layout_marginLeft="2dip" />
            <TextView android:id="@+id/homecalendar4" android:text="MAR 20"
                android:layout_width="0.0dip"
                android:layout_weight="1.0"
                android:layout_height="wrap_content"
                android:padding="10dp"
                android:layout_marginBottom="3dip"
                android:layout_marginLeft="2dip" />
            <ImageButton android:id="@+id/homeimageButton5"
                android:layout_width="0.0dip"
                android:text="btn4"
                android:background="@drawable/favorite_btn"
                android:layout_weight="1.0"
                android:layout_height="wrap_content"
                android:padding="10dp"
                android:layout_marginBottom="3dip"
                android:layout_marginLeft="2dip" />
        </LinearLayout>

それが動作します。

ハッピーコーディング:)

于 2011-08-30T08:35:28.300 に答える
0

相対レイアウトの代わりに線形レイアウトを使用し、以下のコードを使用してください

<RelativeLayout android:id="@+id/relativeLayout1"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:background="#0000FF"
xmlns:android="http://schemas.android.com/apk/res/android">


<LinearLayout android:layout_width="fill_parent"
    android:layout_gravity="bottom" android:orientation="horizontal"
    android:background="@drawable/applicarion_bar" android:layout_height="wrap_content"
    android:id="@+id/relativeLayout4">

        <ImageButton android:id="@+id/homeimageButton2"
            android:layout_alignParentLeft="true"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:layout_weight="1"
            android:background="@drawable/festival_btn" />

        <ImageButton android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/homeimageButton2"
            android:layout_weight="1"
            android:layout_marginLeft="60dp"
            android:layout_width="wrap_content" android:background="@drawable/search_btn"
            android:id="@+id/homeimageButton3"></ImageButton>

        <TextView android:id="@+id/homecalendar4" android:text="MAR 20"
            android:layout_toRightOf="@+id/homeimageButton3"
            android:gravity="center"
            android:textSize="10dp"
            android:layout_marginLeft="60dp"
            android:layout_weight="1"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:background="@drawable/calendar_btn" />

        <ImageButton android:id="@+id/homeimageButton5"
            android:layout_alignParentRight="true"
            android:layout_marginLeft="10dp"
            android:layout_weight="1"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:background="@drawable/favorite_btn" />

</LinearLayout>

</RelativeLayout>
于 2011-08-30T08:35:09.817 に答える
0

線形レイアウトを使用して、すべてのビューに均等な重みを与えるようにしてください。

于 2011-08-30T08:57:59.143 に答える