1

レイアウトに問題があります。ラジオボタンを配置したいダイアログがありますが、スクリーンショットでわかるように、それらは互いに非常に接近しています。それらの間のスペースを広げる方法は?すでに Margin Left/Right、Padding Left/Right などを試しましたが、どれも機能しません。

スクリーンショット

スクリーンショット

私の .xml ファイル:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@drawable/backrepeat_reversed" >
    <TextView android:id="@+id/ml_label"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/size"
        android:gravity="center"/>
    <LinearLayout 
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <RadioGroup  android:id="@+id/radio_group"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center">
        <RadioButton android:id="@+id/rws"
            android:layout_width="wrap_content"
            android:drawableBottom="?android:attr/listChoiceIndicatorSingle"
            android:button="@null"
            android:text="@string/sw"
            android:gravity="center_horizontal|bottom"
            android:layout_height="match_parent"
            android:textColor="#000000"
            android:textSize="50sp"/>
        <RadioButton android:id="@+id/rwm"
            android:layout_width="wrap_content"
            android:drawableBottom="?android:attr/listChoiceIndicatorSingle"
            android:button="@null"
            android:text="@string/mw"
            android:gravity="center_horizontal|bottom"
            android:layout_height="match_parent"
            android:textColor="#000000"
            android:textSize="50sp"/>
        <RadioButton android:id="@+id/rwb"
            android:layout_width="wrap_content"
            android:drawableBottom="?android:attr/listChoiceIndicatorSingle"
            android:button="@null"
            android:text="@string/bw"
            android:gravity="center_horizontal|bottom"
            android:layout_height="match_parent"
            android:textColor="#000000"
            android:textSize="50sp"/>
    </RadioGroup>
    </LinearLayout>
    <TextView android:id="@+id/percent_label"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/percentage"
        android:gravity="center"/>
    <NumberPicker 
        android:id="@+id/percent_picker"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        />

</LinearLayout>
4

2 に答える 2

1

ラジオ ボタンは に並べて配置されますLinearLayout。それらは にlayout_width設定されていwrap_contentます。親 ( RadioGroup) も に設定されwrap_content、その 2 つの親 (LinearLayoutとその親であるルートLinearLayout要素) も に設定されwrap_contentます。重力も中央に設定されているため、すべてが画面の中央に向かって引き寄せられ、まとまったままになります。

試す:

  • ルートLinearLayout要素layout_widthを に設定しますfill_parent
  • ネストされたLinearLayout( の親RadioGroup) を に設定しますRelativeLayout(つまり、要素タイプを変更します)。
  • RadioButton次の属性/値のペアを追加して、各 の幅を 33% に設定します。android:layout_weight=".33"
于 2014-10-07T16:31:42.560 に答える
0

LinearLayout または他のレイアウトを使用して、レイアウトを最適化します。以下のようにできます。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@drawable/backrepeat_reversed" >
    <TextView android:id="@+id/ml_label"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/size"
        android:gravity="center"/>
    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <RadioGroup  android:id="@+id/radio_group"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:gravity="center">
            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center">
                <RadioButton android:id="@+id/rws"
                    android:layout_width="wrap_content"
                    android:drawableBottom="?android:attr/listChoiceIndicatorSingle"
                    android:button="@null"
                    android:text="@string/sw"
                    android:gravity="center_horizontal|bottom"
                    android:layout_height="match_parent"
                    android:textColor="#000000"
                    android:textSize="50sp"/>
            </LinearLayout>
            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center">
                <RadioButton android:id="@+id/rwm"
                    android:layout_width="wrap_content"
                    android:drawableBottom="?android:attr/listChoiceIndicatorSingle"
                    android:button="@null"
                    android:text="@string/mw"
                    android:gravity="center_horizontal|bottom"
                    android:layout_height="match_parent"
                    android:textColor="#000000"
                    android:textSize="50sp"/>
            </LinearLayout>
            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center">
                <RadioButton android:id="@+id/rwb"
                    android:layout_width="wrap_content"
                    android:drawableBottom="?android:attr/listChoiceIndicatorSingle"
                    android:button="@null"
                    android:text="@string/bw"
                    android:gravity="center_horizontal|bottom"
                    android:layout_height="match_parent"
                    android:textColor="#000000"
                    android:textSize="50sp"/>
            </LinearLayout>
        </RadioGroup>
    </LinearLayout>
    <TextView android:id="@+id/percent_label"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/percentage"
        android:gravity="center"/>
    <NumberPicker
        android:id="@+id/percent_picker"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        />

</LinearLayout>

試してみてください。役立つと思います。

于 2014-10-08T09:44:24.727 に答える