当初第一次接触Android组件的时候,我感觉微信底部的菜单,是用button这样的组件来做的。

可我想错了。却是用RadioButton来做的。那到底怎么做,接下来我就做一下分享!希望看了之后你也觉得很简单,很神奇!

上代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
>
<RadioGroup //RadioGroup包裹下面的RadioButton
android:id="@+id/radioGroup1"
android:layout_width="match_parent"
android:layout_height="60dp"
android:orientation="horizontal"
android:background="@drawable/group_buton_nomal" //背景图片 在drawable目录下
android:gravity="center"> <RadioButton
android:id="@+id/radioButton1"
style="@drawable/color"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:button="@null"
android:checked="true"
android:textColor="@drawable/color"
android:drawableTop="@drawable/xiaox"
android:gravity="center"
android:text="微信" /> <RadioButton
android:id="@+id/radioButton4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:drawableTop="@drawable/tongxuil"
android:button="@null"
android:text="通讯录"
android:textColor="@drawable/color"
android:gravity="center"
/> <RadioButton
android:id="@+id/radioButton3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:button="@null"
android:drawableTop="@drawable/faxian"
android:gravity="center"
style="@drawable/color"
android:textColor="@drawable/color"
android:text="发现" /> <RadioButton
android:id="@+id/radioButton2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:button="@null"
android:textColor="@drawable/color"
android:drawableTop="@drawable/wo"
android:text="我"
android:gravity="center"
/>
</RadioGroup>
</LinearLayout>

晕吗?那我就从中拿一个RadioButton分析给大家看,那就拿"微信"这个组件:

       <RadioButton
android:id="@+id/radioButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:button="@null" //隐藏
android:checked="true" //默认选中状态
android:textColor="@drawable/color" //文字颜色color是XML文件,根据判断是否选中而更改当前颜色
android:drawableTop="@drawable/xiaox" //图片样式 xiaox是XML文件,根据判断是否选中而更改当前图片
android:gravity="center" //文字和图片居中
android:text="微信" />

如果没android:button="@null" //隐藏  那么效果如下:

color XML文件代码如下:利用selector属性来判断   android:textColor="@drawable/color" //文字颜色color是XML文件,根据判断是否选中而更改当前颜色

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_checked="true" //当RadioButton为true的时候文字的颜色是#07bb07 否则是 #999999 进行切换
android:color="#07bb07"></item>
<item android:color="#999999"></item> </selector>

 图片样式XML代码如下也是利用selector属性来判断:android:drawableTop="@drawable/xiaox" //图片样式 xiaox是XML文件,根据判断是否选中而更改当前图片

<?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/tabbar_mainframehl" ></item>
<item android:drawable="@drawable/tabbar_mainframe"></item> </selector>

把上面代码 复制到你的XML进行相关修改(selector这个属性下的xml)就看到效果了!图片样式请到百度下载!!!

如果还有什么不懂的可以留言,我也会尽我所能。本文欢迎各位大神批评指正

Android-组件RadioButton使用技巧的更多相关文章

  1. android 组件使用()

    程序入口点 类似于win32程序里的WinMain函数,Android自然也有它的程序入口点.它通过在AndroidManifest.xml文件中配置来指明,可以看到名为NotesList的activ ...

  2. 2015最流行的Android组件、工具、框架大全

    Android 是目前最流行的移动操作系统之一. 随着新版本的不断发布, Android的功能也日益强大, 涌现了很多流行的应用程序, 也催生了一大批的优秀的组件. 本文试图将目前流行的组件收集起来以 ...

  3. android组件化方案、二维码扫码、Kotlin新闻客户端、动画特效等源码

    Android精选源码 CalendarView日历选择器 android下拉刷新动画效果代码 一个非常方便的fragment页面框架 android组件化方案源码 Zxing实现二维码条形码的扫描和 ...

  4. 2015最流行的Android组件、工具、框架大全(转)

    转自:2015最流行的Android组件.工具.框架大全 Android 是目前最流行的移动操作系统之一. 随着新版本的不断发布, Android的功能也日益强大, 涌现了很多流行的应用程序, 也催生 ...

  5. 最强 Android Studio 使用小技巧和快捷键

    写在前面 本文翻译自 Android Studio Tips by Philippe Breault,一共收集了62个 Android Studio 使用小技巧和快捷键. 根据这些小技巧的使用场景,本 ...

  6. Android组件化

    附:Android组件化和插件化开发 App组件化与业务拆分那些事 Android项目架构之业务组件化 Android组件化核心之路由实现 Android组件化开发实践

  7. Android组件安全

    今天在看有关Android组件安全的东西 1.Activity Android系统组件在指定Intent过滤器(intent-filter)后,默认是可以被外部程序(签名不同,用户ID不同)访问的,在 ...

  8. Android课程---Android Studio使用小技巧:提取方法代码片段

    这篇文章主要介绍了Android Studio使用小技巧:提取方法代码片段,本文分享了一个快速复制粘贴方法代码片段的小技巧,并用GIF图演示,需要的朋友可以参考下 今天来给大家介绍一个非常有用的Stu ...

  9. android.widget.RadioButton 单选按钮(转)

    大家好,我们今天这一节要介绍的是RadioGroup 的组事件.RadioGroup 可将各自不同的RadioButton ,设限于同一个Radio 按钮组,同一个RadioGroup 组里的按钮,只 ...

随机推荐

  1. pyspider爬豆瓣电影实例

    直接copy官网实例会出现599的错误,百度了很久发现是因为证书的问题 添加这一句忽略证书 validate_cert = False 代码如下: ++++++++++++++++++++++++++ ...

  2. <<< 编程类开发工具

    Java.开发工具 java运行环境JDK下载 1.6 →下载JDK1.6 1.7 →下载JDK1.7 简介:著名的跨平台开源集成开发环境(IDE).最初主要用来Java语言开发,Eclipse的本身 ...

  3. IntelliJ IDEA 15 在线激活地址

    License server,直接输入http://www.iteblog.com/idea/key.php地址即可激活IntelliJ IDEA 15:

  4. C#------接口的理解

    转载: http://blog.jobbole.com/85751/

  5. 20145204&20145212实验二报告

    实验二固件设计 步骤: 1.开发环境的配置,参考实验一 1.将实验代码拷贝到共享文件夹中. 2.在虚拟机中编译代码.对于多线程相关的代码,编译时需要加-lpthread的库.下载调试在超级终端中运行可 ...

  6. 巧用setTimeout解决阻塞导致页面无法重绘

    项目中遇到一个javascript问题,大致如下: <!doctype HTML> <html> <head> <meta charset="utf ...

  7. [原创]Linq to xml增删改查Linq 入门篇:分分钟带你遨游Linq to xml的世界

    本文原始作者博客 http://www.cnblogs.com/toutou Linq 入门篇(一):分分钟带你遨游linq to xml的世界 本文原创来自博客园 请叫我头头哥的博客, 请尊重版权, ...

  8. AngularJS 技术总结

    学习AngularJS,并且能在工作中使用到,算是很幸运了.因此本篇也会搜集各种资料,进行分享. 书籍分享 AngularJS权威指南 常用链接 AngularJS API文档 AngularJS 用 ...

  9. NOIP2012同余方程

    描述 求关于 x的同余方程  ax ≡ 1(mod b) 的最小正整数解. 输入格式 输入文件 mod.in输入只有一行,包含两个正整数a,b,用一个空格隔开. 输出格式 输出文件 为 modmod  ...

  10. Java Web 学习链接

    解决JSP中文乱码问题:http://www.cnblogs.com/chengkai/articles/2171848.html 编程思想之多线程与多进程:http://blog.csdn.net/ ...