-1

これは私のAndroid開発の5日目ですので、優しくしてください!

3つのボタンを2列に配置しようとしていますSlidingDrawer。これはこれまでのところですが、2列目のボタンが表示されない理由がわかりません。

<SlidingDrawer
    android:id="@+id/SlidingDrawer"
    android:layout_width="fill_parent"
    android:layout_height="200dip"
    android:content="@+id/drawerButtons"
    android:handle="@+id/slideHandleButton" >

    <Button
        android:id="@+id/slideHandleButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/closearrow" />

    <RelativeLayout
        android:id="@+id/drawerButtons"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#80000000" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/Button01"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="Test1" >
            </Button>

            <Button
                android:id="@+id/Button02"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="Test2" >
            </Button>

            <Button
                android:id="@+id/Button03"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="Test3" >
            </Button>
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/Button04"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="Test4" >
            </Button>

            <Button
                android:id="@+id/Button05"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="Test5" >
            </Button>

            <Button
                android:id="@+id/Button06"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="Test6" >
            </Button>
        </LinearLayout>
    </RelativeLayout>

</SlidingDrawer>

ボタンの最初の行は期待どおりに表示されますが、2番目の行が表示されませんか?ただ空のスペース。

助けていただければ幸いです

4

2 に答える 2

2

レイアウトに要素を配置する方法のヒントを与えずに、両方のLinearLayoutをRelativeLayout内にドロップしました。したがって、デフォルトでは、両方のLinearLayoutは、RelativeLayout内の(0,0)で互いの上にレンダリングされます。

1つの解決策は、一番上のLinearLayoutにIDを与えることです。

android:id="@+id/topRow"

次に、LinearLayoutにRelativeLayout内に自分自身を配置する場所のヒントを与えます

android:layout_below="@id/topRow"

それに加えて、両方のLinearLayoutsのlayout_heightをwrap_contentに設定する必要があります。それ以外の場合、最初のLinearLayoutはRelativeLayout全体を埋め、もう1つは画面の外側の下に配置されます。

その他の解決策:LinearLayoutをLinearLayout内に垂直方向にラップするか、GridLayout(> = APIレベル14)を使用します。ビューツリーを縮小してRelativeLayoutを1つだけ使用し、layout_below、layout_leftOf、...を使用して要素をレイアウト内に配置することもできます。

于 2012-09-14T13:32:51.030 に答える
0
try this below code : 

<LinearLayout
     android:layout_width="fill_parent"
     android:id="@+id/drawerButtons"
     android:orientation="vertical"
     <LinearLayout>
        // your buttons
     </LinearLayout>
     <LinearLayout>
        // your buttons
     </LinearLayout>
</LinearLayout>
于 2012-09-14T13:36:53.430 に答える