ToggleButton 实现开关效果
2015-08-17 20:42
531 查看
利用ToggleButton可以实现一个简单的开关的效果,先上效果图:
![](https://img-blog.csdn.net/20150907105621214)
因为动态图截取的时候,颜色好像有问题,就用这个颜色的啦。凑合着能看。
首先在布局中放一个ToggleButton和ImageView
checked:默认的状态,false为关
textOn:状态为开的时候显示的文本,默认是on
textOff:状态为关的时候显示的文本,默认是off
新建一个selector用来显示不同状态的时候的背景:
这样,在ToggleButton状态为on和off的时候,分别显示不同的背景。也可以在代码中添加监听,做响应的操作:
这里就是监听了状态的改变,然后改变ImageView的背景。这样一个简单的开关效果及监听就完成了。
因为动态图截取的时候,颜色好像有问题,就用这个颜色的啦。凑合着能看。
首先在布局中放一个ToggleButton和ImageView
<ToggleButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New ToggleButton" android:id="@+id/toggleButton" android:textOn="" android:textOff="" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:background="@drawable/tbtn_bg" android:checked="false"/>
checked:默认的状态,false为关
textOn:状态为开的时候显示的文本,默认是on
textOff:状态为关的时候显示的文本,默认是off
新建一个selector用来显示不同状态的时候的背景:
<selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@mipmap/switch_on" android:state_checked="true"></item> <item android:drawable="@mipmap/switch_off" android:state_checked="false"></item> </selector>
这样,在ToggleButton状态为on和off的时候,分别显示不同的背景。也可以在代码中添加监听,做响应的操作:
tbtn.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { iv.setBackgroundColor(isChecked ? Color.GREEN : Color.RED); } });
这里就是监听了状态的改变,然后改变ImageView的背景。这样一个简单的开关效果及监听就完成了。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories