iOS的SwitchButton深入人心,也被Android上的产品设计借鉴,在Android4.0中,系统就带有原生的Switch控件了。但是在老版本的Android上,怎样实现这个功能呢?
最简单的方法就是,把SwitchButton看成是个CheckBox或者ToggleButton,直接设置button属性或者background属性就可以。
<?xml version="1.0" encoding="utf-8"?>

但是这样实现,并没有像iOS上那样的滑动动画效果。下面介绍两种自定义的SwitchButton的控件的开源库。
http://ankri.de/switch-button-for-android-2-3-gingerbread/  
这篇博文中详细介绍了其实现方法,也可以下载到源代码。这个可以用手拖动开关,效果非常接近了。但是也是有缺点的,不能实现背景移动,其背景是一个ProgressDrawable。
https://github.com/Issacw0ng/SwitchButton
这个是我坚果的最完美模拟iOS效果的SwitchButton。可以实现拖动,背景也可以跟着拖动。但是代码的实现上不是那么严谨,不能调整大小,不能灵活自定义样式。

这两个的实现原理基本类似,代码也比较少,有兴趣的同学可以研究一下源代码,非常值得学习的开源项目。

更多相关文章

  1. Android实现多页左右滑动效果,支持子view动态创建和cache
  2. Android TextView实现跑马灯效果_1_1
  3. 解决Android的ListView控件滚动时背景变黑
  4. android Listview 拖动时背景为黑色问题
  5. Android 01:AutoCompleteTextView-简单实现实现自动输入文本效果
  6. 如何在android中实现swipe的手势功能及页面拖动动画
  7. Android 水波纹点击效果(Ripple Effect)

随机推荐

  1. android中listView下拉刷新
  2. 我是如何自学Android,资料分享
  3. 【Android】手写优化-更为平滑的签名效果
  4. ANDROID 开机启动VNC SERVER
  5. Android(安卓)button去掉背影阴影效果
  6. Android的隐私保护利器
  7. 读取联系人 2.0
  8. Android手机搭建Linux服务器
  9. Android Studio集成讯飞语音开发出现2100
  10. android 获取一个apk的信息