隐藏单选按钮图标,但不隐藏单选按钮图标
我需要隐藏单选按钮的图标:将其设置为不可见,但只有图标,而不是文本(setInvisible
也隐藏了文本)。该图标仍应占用空间,以便文本与其他单选按钮的文字保持一致。另外,单选按钮(它的文本)应该是可点击的。隐藏单选按钮图标,但不隐藏单选按钮图标
换句话说,我想要的是图标是“透明的”(不可见),但除此之外“在那里”:可点击,占用空间。
我需要以编程方式执行此操作,而不是使用XML。
任何想法?
XML:
<RadioButton
android:paddingLeft="31dp"
android:button="@android:color/transparent" />
爪哇:
RadioButton myButton = (RadioButton) findViewById(R.id.radio);
myButton.setButtonDrawable(android.R.color.transparent);
myButton.setPadding(31, 0, 0, 0);
setPadding()采用在像素表示填充INT值, 看到[email protected]根据需要,以便调节填充。
@MBennett谢谢。它的工作原理除了''31dp“'(一个字符串)不允许作为'setPadding'的第一个参数。我已经将它改成了'(int)(31 * getResources()。getDisplayMetrics()。density + 0.5f'),以便从31dp转换为像素。也许你想相应地改变你的答案。缩小,也许我会玩的宽度或者我做了转换错误? –
34dp(转换为像素)似乎在Android 4.0中工作在2.3需要稍大的值 –
这适用于我 ' myButton.setButtonDrawable(android.R.color.transparent);'where myButton.setButtonDrawable(null);'不感谢。 – CrandellWS
设置android:button="@null"
将删除默认的无线图标
<RadioButton
android:id="@+id/rb1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:button="@null"
android:text="Female" />
你可以不带文字创建一个单选按钮,以及它的左侧包含单选按钮描述一个TextView。 –
@MBennett谢谢,但那是XML。我需要在Java中的相当于 –
@ PhilippJahoda好主意,但在我的情况下,很难申请,因为我需要将按钮从“正常”转到“无图标”,并返回 –