我是安卓新手。我需要使用自定义图像实现单选按钮功能。是否有任何内置的单选按钮控件或任何简单的方法来实现此功能?
提前致谢
制作可绘制文件夹并创建 button_radio.xml 文件:
res/drawable/button_radio.xml
button_radio.xml:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:state_pressed="false"
android:drawable="@drawable/radio_on"/>
<item android:state_checked="false" android:state_pressed="false"
android:drawable="@drawable/radio_off"/>
<item android:state_checked="true" android:state_pressed="true"
android:drawable="@drawable/radio_on_pressed"/>
<item android:state_checked="false" android:state_pressed="true"
android:drawable="@drawable/radio_off_pressed"/>
</selector>
在您的布局设置单选按钮中:
主.xml:
<RadioGroup android:layout_width="fill_parent"
android:layout_height="50dp"
android:orientation="horizontal"
android:checkedButton="@+id/first">
<RadioButton android:id="@+id/first"
android:width="50dp"
android:height="50dp"
android:button="@drawable/button_radio"/>
<RadioButton android:id="@+id/second"
android:width="50dp"
android:height="50dp"
android:button="@drawable/button_radio"/>
<RadioButton android:id="@+id/third"
android:width="50dp"
android:height="50dp"
android:button="@drawable/button_radio"/>
<RadioButton android:id="@+id/fourth"
android:width="50dp"
android:height="50dp"
android:button="@drawable/button_radio"/>
</RadioGroup>
注意*radio_on 和 radio_off 将是您的自定义图像*
你的单选按钮应该有这个代码来正确设置背景
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:button="@android:color/transparent"
android:background="@drawable/radiobutton_selector" />
这是你的选择器
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/radio_button" android:state_checked="false"/>
<item android:drawable="@drawable/radio_button_h" android:state_checked="true"/>
<item android:drawable="@drawable/radio_button"/> <!-- default -->
</selector>
radio_button_h 和 radio_button 是可绘制的图像。这个对我有用