我想要一些if else
作为ImageViews
工作。但我不希望RadioButtons
的迷你按钮选择它;我希望这个迷你按钮消失,ImageView成为整个按钮。因此,像下面这样的解决方案并不好。
RadioButton
我可以使用<RadioButton
android:id="@+id/myId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableRight="@drawable/myIcon"/>
作为ImageViews
使用小部件或其他内容,还是应该自己编写按钮的所有逻辑?
答案 0 :(得分:3)
我建议您创建自定义单选按钮。查看 Evan Bashir的<{3}}
答案 1 :(得分:2)
您可以尝试使用按钮属性,例如bellow。
<RadioButton
android:id="@+id/myId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:button="@drawable/myIcon"/>
或通过语法。
myRadioButton.setButtonDrawable(resourceId or Drawable);
您可以在通过以下xml文件选择RB时更改图像...将此文件保存在drawable文件夹中,并在button
属性或语法上调用它。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:drawable="@drawable/star_down" />
<item android:state_checked="false" android:drawable="@drawable/star" />
</selector>
答案 2 :(得分:1)
只需在RadioButton的XML声明的android:background
中设置图像即可。
同时将android:button
设置为透明:android:button="@android:color/transparent"
如果你想拥有不同的状态 - 为两种状态创建一个包含不同图像的选择器。