android系列:用RadioButton实现ABCD单选效果
2014-11-14 11:31
591 查看
先上效果,主要是让用户选择ABCD的选项,一次只能选一个,
![](https://img-blog.csdn.net/20141114134312843?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvanVhbjA3MjhqdWFu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
实现方法:
1:设置单选按钮样式为让用户看不到的小图,这里就是一个1*1像素的图片,原本想用@null,竟然不行
selector_radio.xml,放在drawable文件夹下
2:设置单选按钮的背景,这个背景可以响应用户选择和未选的变化,
selector_radio_bg.xml,放在drawable文件夹下
3:在values下的styles.xml里定义样式
4:OK,接下来在布局文件里引用就可以了,如下:
接下来把三个图片放上来
按钮选中后背景图
![](https://img-blog.csdn.net/20141114114048609)
按钮未选中背景图
![](https://img-blog.csdn.net/20141114114037883)
按钮的小图片,看效果图还是不行,你们去做一个1*1像素的透明图片试试吧
![](https://img-blog.csdn.net/20141114114047321)
实现方法:
1:设置单选按钮样式为让用户看不到的小图,这里就是一个1*1像素的图片,原本想用@null,竟然不行
selector_radio.xml,放在drawable文件夹下
<!-- 单选按钮自定义效果 --> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/radio_null_btn" android:state_checked="true" android:state_enabled="true" /> <item android:drawable="@drawable/radio_null_btn" android:state_checked="false" android:state_enabled="true" /> </selector>
2:设置单选按钮的背景,这个背景可以响应用户选择和未选的变化,
selector_radio_bg.xml,放在drawable文件夹下
<!-- 单选按钮背景自定义效果 --> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/custom_checked" android:state_checked="true" android:state_enabled="true" /> <item android:drawable="@drawable/custom_unchecked" android:state_checked="false" android:state_enabled="true" /> </selector>
3:在values下的styles.xml里定义样式
<style name="custom_radio_styles"> <item name="android:background">@drawable/selector_radio_bg</item> <item name="android:button">@drawable/selector_radio</item> <item name="android:gravity">center</item> </style>
4:OK,接下来在布局文件里引用就可以了,如下:
<RadioGroup android:id="@+id/show_radio_group" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" > <RadioButton android:id="@+id/single_radio_a" style="@style/custom_radio_styles" android:layout_width="30dp" android:layout_height="30dp" android:layout_marginRight="10dp" android:text="A" /> <RadioButton android:id="@+id/single_radio_b" style="@style/custom_radio_styles" android:layout_width="30dp" android:layout_height="30dp" android:layout_marginRight="10dp" android:text="B"/> <RadioButton android:id="@+id/single_radio_c" style="@style/custom_radio_styles" android:layout_width="30dp" android:layout_height="30dp" android:layout_marginRight="10dp" android:text="C"/> <RadioButton android:id="@+id/single_radio_d" style="@style/custom_radio_styles" android:layout_width="30dp" android:layout_height="30dp" android:layout_marginRight="10dp" android:text="D"/> </RadioGroup>
接下来把三个图片放上来
按钮选中后背景图
按钮未选中背景图
按钮的小图片,看效果图还是不行,你们去做一个1*1像素的透明图片试试吧
相关文章推荐
- Android 使用RadioGroup和RadioButton实现单选效果
- Android控件笔记——使用RadioGroup和RadioButton实现单选效果
- Android:实现类似RadioButton自动换行及单选效果
- 为DataGrid添加RadioButton按钮,实现单选效果
- Android自定义组件系列【11】——实现3D立体旋转效果
- android自定义控件系列教程----继承ViewGroup实现带阻力效果的可回弹的SrollView
- Android UI设计系列之ImageView实现ProgressBar旋转效果(1)
- Android ListView中点击单行实现RadioButton的单选功能,自定义Item布局文件
- Android学习杂记(一)单选框实现单选必须为每个RadioButton添加一个唯一的Id属性
- Android UI控件系列:RadioButton(单选按钮)
- Android自定义控件系列六:自定义ViewGroup(一)实现ViewPager效果
- Android自定义组件系列【14】——Android5.0按钮波纹效果实现
- [转]Gridview中实现RadioButton单选效果
- android RadioButton实现选项卡的效果
- Android自定义控件系列五:自定义ViewGroup(一)实现ViewPager效果
- android-------listview 实现radiobutton 单选
- [Android学习系列5]一些界面实现效果
- Android系列之ListView实现分页和类似异步加载效果(转载)
- Android自定义组件系列【11】——实现3D立体旋转效果
- Android ListView 实现Item单选效果