Android 各种按钮点击效果以及兼容性问题总结


转载请标明出处:
http://blog.csdn.net/tyzlmjj/article/details/50096777
本文出自:【M家杰的博客】

概述
点击效果在安卓的原生开发中无处不见,主要是为了对用户的操作在视觉上进行反馈。这个反馈很平常也很重要。而安卓5.0开始引入的全新设计Material Design真的超赞!特别是触摸反馈的波纹效果,可惜这个波纹效果只支持5.0及以上的版本,应该是出于性能的考虑!坑爹啊!
但是既然5.0以上可以用酷炫的点击效果,那就不能浪费要用起来,这篇博客前面先讲下Button和ImageView点击效果的基本实现,然后再讲下我个人如何处理兼容Material 设计效果


按钮点击效果基本实现

Button点击

Button的点击效果最简单的实现方法就是为android:background属性设置drawable文件。
drawable文件的写法很多,这里就拿官方的例子拿来讲解,如下:

btn_default.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_window_focused="false" android:state_enabled="true"
        android:drawable="@drawable/btn_default_normal" />

    <item android:state_window_focused="false" android:state_enabled="false"
        android:drawable="@drawable/btn_default_disabled" />

    <item android:state_pressed="true"
        android:drawable="@drawable/btn_default_pressed" />

    <item android:state_focused="true" android:state_enabled="true"
        android:drawable="@drawable/btn_default_focused" />

    <item android:state_enabled="true"
        android:drawable="@drawable/btn_default_normal" />

    <item android:state_focused="true"
        android:drawable="@drawable/btn_default_disabled_focused" />

    <item
        android:drawable="@drawable/btn_default_disabled" />
</selector>

上面代码中selector用于建立状态列表,里面的每个<item>用于说明状态并给予图像(这里是用9png图片)。其实就是else if语句写了好几个,从上往下当某个<item>条件满足时就会应用它,后面的<item>就不管了,所以<item>顺序也是很重要的。有关状态列表的更多信息:点我
这份XML代码非常细致的区分出了5种状态并对

  • 13
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值