如何将复选框设置在文本右侧

27

可能重复:
如何将安卓复选框显示在右侧?

在我的安卓应用程序中,我有一个带有相关文本的复选框。默认情况下,文本在右侧,而复选框在左侧。但是我想把复选框放到右侧。请帮忙。


1
@CommonsWare 已在此回答:http://stackoverflow.com/a/3157228/310760 - FeelGood
3个回答

39

非常简单,优雅地完成:

  1. 创建自己的复选框按钮,其中包括已选和未选状态。
  2. 编辑布局文件,对于复选框节点:
    1. 设置 android:button="@null"
    2. 设置 android:drawableRight="@drawable/YOUR_CHECKBOX_BUTTON"

完美解决您的问题。

如果您想将文本放置在按钮下方,请设置 android:drawableTop


1
太棒了!我能够轻松地将一组单选按钮修改为列排序标题。 - ArtOfWarfare
这个回答好多了。 - Mikhail
1
保留默认的可绘制图像怎么样? - Dan Tumaykin
5
@DanTumaykin使用这个代码:android:drawableRight="?android:attr/listChoiceIndicatorMultiple" - tomrozb

19

我不知道通过样式是否可能实现,

但是这里有一个解决方案:

使用""作为CheckBox的值,然后在CheckBox左侧添加一个TextView来显示你想要的文本。


1
有没有其他方法,不使用两个视图? - Shaiful
22
请使用 CheckedTextView,它将复选框放在右侧。 - Tanmay Mandal
2
但是单选按钮有什么用呢...... - N-JOY
1
有关 CheckedTextView 的任何教程或示例吗? - Shaiful

1

您可以通过以下方式实现:

  1. 采用线性布局。
  2. 将其方向设置为水平。
  3. 然后放置一个文本视图和一个复选框。
  4. 在文本视图中放置与所需关联的复选框相同的文本。

谢谢。


有没有其他方法,不使用两个视图? - Shaiful
我遇到了同样的问题...然后我按照我说的方法使用了它...默认情况下,Android将文本放置在复选框的左侧... - N-JOY
谢谢回复。但是有三个组件而不是一个,而且更加复杂。:( - Shaiful

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接