Android 5.0+ 自定义普通按钮的ripple波纹效果
2016-03-17 15:41
375 查看
Android 5.0中新增了ripple类型,即波纹效果在res中添加一个新的文件夹drawable-v21,用于保存波纹效果button_ripple_orange.xml[html] viewplain copy<?xml version="1.0" encoding="utf-8"?><ripple xmlns:android="http://schemas.android.com/apk/res/android"android:color="#FFEEEEEE"><item android:drawable="@drawable/button_bg_orange" /></ripple>
ripple相当于layer-list层叠效果,ripple元素的color属性即指定了波纹效果的颜色,但必须是8位颜色代码值,前两位指定了波纹的透明度,后六位即波纹颜色,以黑色000000及白色FFFFFF效果最为明显
而<item android:drawable="@drawable/button_bg_orange" />即指定了按钮的正常状态的显示效果
button_bg_orange.xml
[html] view plain copy <?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle"><corners android:radius="@dimen/button_corner_radius" /><solid android:color="@color/theme" /></shape>将button_ripple_orange设置为按钮Background即可在按钮上实现点击波纹效果,但必须是API 21以上版本
如果只是普通的波纹效果,当你使用了Material主题后,波纹动画会自动应用在所有的控件上,也可以自己来设置其属性来调整到我们需要的效果。可以通过如下代码设置波纹的背景:android:background="?android:attr/selectableItemBackground"波纹有边界android:background="?android:attr/selectableItemBackgroundBorderless"波纹超出边界
相关文章推荐
- 让Android Studio的智能感知不区分大小写
- Android开发实例详解之IMF(Android SDK Sample—SoftKeyboard)
- 浅谈 MVP in Android
- JNI_Android项目中调用.so动态库实现详解(初探)
- 给 Android 开发者的 RxJava 详解
- MVP for Android: 如何组织显示层的内容
- Android 自定义权限 (<permission> <uses-permission>)
- Android事件分发机制
- Android的硬件加速
- Android declare-styleable自定义属性
- Android TextView自定义实现@用户跳转
- android自定义view之刷新验证码
- 阅读《Android 从入门到精通》(32)——Bundle
- Android的Activity屏幕切换动画(一)-左右滑动切换
- Android 无需root实现apk的静默安装
- Android工程编译的时候报libmaliinstr.so not found的错误是为什么呢?
- Android中对Handle机制的理解
- Android如何使用API
- android的输入框EditText限制条件setFilters
- Android Java与C++的调用