0

ここに画像の説明を入力してください

みなさん、こんにちは。ここで問題が発生しました。線形レイアウトがあり、ボタンを水平に追加したいのですが、ボタンが線形レイアウトの端に触れた場合に自動的に線を壊す必要があります。ボタン(XMLではなく)をコーディングし、「wrapcontent」(テキスト内)に設定しました。私の英語はあまり上手ではないので、ここに絵を描きます。

読んでくれてありがとう!

4

1 に答える 1

2

以前にボタンのサイズがわかっている場合は、レイアウトをレイアウトに配置できます。イメージを表すこの例を参照してください。

<LinearLayout
    android:id="@+id/outerLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    >
    <LinearLayout 
        android:id="@+id/innerLayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        >
        <Button 
            android:id="@+id/button1"
            android:layout_width="0dp"
            android:layout_weight="5"
            android:layout_height="wrap_content"
            /> 
        <Button 
            android:id="@+id/button2"
            android:layout_width="0dp"
            android:layout_weight="5"
            android:layout_height="wrap_content"
            /> 
    </LinearLayout>
    <LinearLayout 
        android:id="@+id/innerLayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        >
        <Button 
            android:id="@+id/button3"
            android:layout_width="0dp"
            android:layout_weight="5"
            android:layout_height="wrap_content"
            /> 
        <Button 
            android:id="@+id/button4"
            android:layout_width="0dp"
            android:layout_weight="5"
            android:layout_height="wrap_content"
            /> 
    </LinearLayout>
    <Button
       android:id="@+id/button5"
       android:layout_width="match_parent"
       android:layout_weight="5"
       android:layout_height="wrap_content"
       /> 
</LinearLayout>

ご覧のとおり、layout_weight属性を使用してボタンの幅を操作できます。layout_widthこれは、 exceptで具体的なサイズを設定することでも可能match_parentです。

Viewコードから sを追加する場合も同じです。ただし、XML で Android のレイアウトを説明することをお勧めします。概要がよくわかるからです。

于 2012-12-01T02:17:13.893 に答える