Android。如何自定义单选按钮
Android. How to customize radio button
我需要一个位于单选组内的单选按钮,左侧是文本,文本后是一个图标,右侧是一个按钮。这是我的代码:
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="8dp"
android:layout_marginTop="12dp"
android:layout_marginEnd="8dp"
android:drawableStart="@drawable/ic_phone"
android:layoutDirection="rtl"
android:text="@string/agreement_text"
android:textColor="@color/blue"
android:textSize="20sp" />
但是,在这种情况下,drawable 位于按钮前面,我需要它位于文本之后。如果用 drawableEnd 替换它,那么图标将位于文本前面,这对我来说也是不正确的。请告诉我如何达到预期的结果。
预期结果:
当前结果(对我来说不正确):
尝试将以下属性添加到 RadioButton 中,应该可以。
android:layoutDirection="rtl"
android:textAlignment="textStart"
android:layout_gravity="start"
记得在您的应用程序清单中将 supportsRtl 属性 设置为 true。
<RadioGroup
android:layout_width="match_parent"
android:layout_height="wrap_content">
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="12dp"
android:layout_marginEnd="8dp"
android:layoutDirection="rtl"
android:textAlignment="textStart"
android:layout_gravity="start"
android:button="@drawable/ic_icon_phone_red"
android:text="ender"
android:textColorLink="@color/white"
android:textColor="@color/white"
android:textSize="20sp" />
</RadioGroup>
我需要一个位于单选组内的单选按钮,左侧是文本,文本后是一个图标,右侧是一个按钮。这是我的代码:
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="8dp"
android:layout_marginTop="12dp"
android:layout_marginEnd="8dp"
android:drawableStart="@drawable/ic_phone"
android:layoutDirection="rtl"
android:text="@string/agreement_text"
android:textColor="@color/blue"
android:textSize="20sp" />
但是,在这种情况下,drawable 位于按钮前面,我需要它位于文本之后。如果用 drawableEnd 替换它,那么图标将位于文本前面,这对我来说也是不正确的。请告诉我如何达到预期的结果。
预期结果:
当前结果(对我来说不正确):
尝试将以下属性添加到 RadioButton 中,应该可以。
android:layoutDirection="rtl"
android:textAlignment="textStart"
android:layout_gravity="start"
记得在您的应用程序清单中将 supportsRtl 属性 设置为 true。
<RadioGroup
android:layout_width="match_parent"
android:layout_height="wrap_content">
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="12dp"
android:layout_marginEnd="8dp"
android:layoutDirection="rtl"
android:textAlignment="textStart"
android:layout_gravity="start"
android:button="@drawable/ic_icon_phone_red"
android:text="ender"
android:textColorLink="@color/white"
android:textColor="@color/white"
android:textSize="20sp" />
</RadioGroup>