我想把左边的单选按钮的文字放在右边
我找到了这个解决方案
<RadioGroup
android:id="@+id/radios"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_gravity="right"
android:inputType="text"
android:orientation="vertical" >
<RadioButton
android:id="@+id/first"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:background="@color/white"
android:button="@null"
android:drawablePadding="30dp"
android:drawableRight="@android:drawable/btn_radio"
android:text="first"
android:textColor="@color/Black"
android:textSize="20dip" />
<RadioButton
android:id="@+id/second"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/Black"
android:button="@null"
android:drawablePadding="30dp"
android:drawableRight="@android:drawable/btn_radio"
android:text="second"
android:textColor="@color/White"
android:textSize="20dp" />
<RadioButton
android:id="@+id/third"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/Maroon"
android:button="@null"
android:drawablePadding="30dp"
android:drawableRight="@android:drawable/btn_radio"
android:text="third"
android:textColor="@color/Vanilla"
android:textSize="20dp" />
</RadioGroup>
Run Code Online (Sandbox Code Playgroud)
但问题是,文本引力将在左边,我想要的是把它放到正确,因为我正在写阿拉伯语单词

Irs*_*shu 110
尝试添加以下属性RadioButton,它应该工作,这样你仍然可以保持单选按钮上的涟漪效果:
android:layoutDirection="rtl"
android:textAlignment="textStart"
android:layout_gravity="start"
Run Code Online (Sandbox Code Playgroud)
请记住在应用程序清单中将supportsRtl属性设置为true.
例如:
<RadioGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:layoutDirection="rtl"
android:textAlignment="textStart"
android:layout_gravity="start"
android:text="The test item a"
android:textSize="14sp" />
....
</RadioGroup>
Run Code Online (Sandbox Code Playgroud)
会给出:
Muk*_*ngh 60
按以下方式添加android:gravity="right"每个RadioButton..
<RadioGroup
android:id="@+id/radios"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_gravity="right"
android:inputType="text"
android:orientation="vertical" >
<RadioButton
android:id="@+id/first"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:background="@color/white"
android:button="@null"
android:drawablePadding="30dp"
android:drawableRight="@android:drawable/btn_radio"
android:text="first"
android:textColor="@color/Black"
android:textSize="20dip"
android:gravity="right"/>
<RadioButton
android:id="@+id/second"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/Black"
android:button="@null"
android:drawablePadding="30dp"
android:drawableRight="@android:drawable/btn_radio"
android:text="second"
android:textColor="@color/White"
android:textSize="20dp"
android:gravity="right"/>
<RadioButton
android:id="@+id/third"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/Maroon"
android:button="@null"
android:drawablePadding="30dp"
android:drawableRight="@android:drawable/btn_radio"
android:text="third"
android:textColor="@color/Vanilla"
android:textSize="20dp"
android:gravity="right" />
</RadioGroup>
Run Code Online (Sandbox Code Playgroud)
Max*_*Max 21
基于Irshu的答案,我建议使用以下解决方案,它使用材料涟漪效应并产生以下结果:
如果您想要GIF中显示的分隔线,只需添加高度为1的视图和无线电按钮之间的背景色.
<RadioGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:checkedButton="@+id/radioButton1">
<RadioButton
android:id="@+id/radioButton1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:button="@null"
android:drawableRight="?android:attr/listChoiceIndicatorSingle"
android:background="?android:selectableItemBackground"
android:layoutDirection="rtl"
android:layout_gravity="start"
android:textAlignment="textStart"
android:paddingBottom="10dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="10dp"
android:text="Button1"
android:textSize="14sp" />
<RadioButton
android:id="@+id/radioButton2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:button="@null"
android:drawableRight="?android:attr/listChoiceIndicatorSingle"
android:background="?android:selectableItemBackground"
android:layoutDirection="rtl"
android:layout_gravity="start"
android:textAlignment="textStart"
android:paddingBottom="10dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="10dp"
android:text="Button2"
android:textSize="14sp" />
<RadioButton
android:id="@+id/radioButton3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:button="@null"
android:drawableRight="?android:attr/listChoiceIndicatorSingle"
android:background="?android:selectableItemBackground"
android:layoutDirection="rtl"
android:layout_gravity="start"
android:textAlignment="textStart"
android:paddingBottom="10dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="10dp"
android:text="Button3"
android:textSize="14sp" />
</RadioGroup>
Run Code Online (Sandbox Code Playgroud)
Rob*_*ood 19
有一个属性被称为android:drawableRight将你的文本的可绘制右侧设置android:button为null.检查下面的代码:
注意:这是示例,您可以申请所有radioButton.
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:button="@null"
android:drawableRight="@android:drawable/btn_radio"
android:text="Left"/>
Run Code Online (Sandbox Code Playgroud)
Sey*_*yed 11
只需添加:
android:button="@null"
android:drawableRight="@android:drawable/btn_radio"
Run Code Online (Sandbox Code Playgroud)
在xml中添加:(4.2及以上)
android:layoutDirection="rtl"
Run Code Online (Sandbox Code Playgroud)
对于早于4.2的版本,请使用android.support.v4.view中的ViewCompat:
ViewCompat.setLayoutDirection(findViewById(R.id.radio_button), ViewCompat.LAYOUT_DIRECTION_RTL);
Run Code Online (Sandbox Code Playgroud)
小智 8
尝试将以下属性添加到 RadioButtons 中,它可以工作
<RadioGroup
android:id="@+id/radioGroup_sample"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layoutDirection="rtl"
android:orientation="horizontal"
android:weightSum="2">
<RadioButton
android:id="@+id/radio_sample_one"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:layoutDirection="rtl"
android:text="?????? ?? ?? ?????"
android:button="@null"
android:drawableRight="?android:attr/listChoiceIndicatorSingle"/>
<RadioButton
android:id="@+id/radio_sample_tow"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:layoutDirection="rtl"
android:text="?????? ?? ?? ?????"
android:button="@null"
android:drawableRight="?android:attr/listChoiceIndicatorSingle"/>
</RadioGroup>
Run Code Online (Sandbox Code Playgroud)
我的示例代码的这张图片
<RadioButton
android:id="@+id/myRb"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAlignment="gravity"
android:gravity="left|center_vertical"
android:layoutDirection="rtl"
android:layout_gravity="start"
/>
Run Code Online (Sandbox Code Playgroud)
现在 Rtl 会将您的文本移至右侧,
小智 5
很简单,你想让文本出现在单选按钮的左边,你只需要把布局方向改为rtl(==从右到左):
android:layoutDirection="rtl"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
66692 次 |
| 最近记录: |