android点击按钮放大,Button按下放大放小的阴影效果实现

回顾之前的做法

Button按下 Pressed的效果一般用selector实现。(需要3个文件 比较繁琐)1. pressed_xml 2.unpress 3 selector.今天我给大家介绍的是一种新的实现方法:可以实现动画、放大放小、按压效果,并且符合:Material Design 的风格.

我们平时处理TextView或Button的点击效果,通常会改变控件的颜色来区分是否按下,但是这并不符合MD的规范。因此 Material Design 对组件有了 z 轴这个概念,也就是高度。z 值越大,组件离界面底层(水平面)越远,投影越重。那我们怎么来实现组件在 z 轴(高度)上的变化效果呢?这就需要用到今天讲到的 StateListAnimator 了。

实现的效果:

b40340147e96

buttonSelector.gif

备注:至于Button按下放大多少可以根据设计要求自己调整(可调整)

具体实现过程:

android:stateListAnimator="@animator/selector_animator"

android:text="重新定位"

/>

这里重点说一下@animator/selector_animator"。这个文件在res/animator文件夹下

android:propertyName="scaleX" android:valueTo="1.625"

android:valueType="floatType"/>

android:propertyName="scaleY" android:valueTo="1.625"

android:valueType="floatType"/>

android:propertyName="translationZ" android:valueTo="20dp"

android:valueType="floatType"/>

android:propertyName="scaleX" android:valueTo="1.0"

android:valueType="floatType"/>

android:propertyName="scaleY" android:valueTo="1.0"

android:valueType="floatType"/>

android:propertyName="translationZ" android:valueTo="0dp"

android:valueType="floatType"/>

简单解释和说明:

我们可以看到objectAnimator 定义了两个set一个pressed状态和一种默认状态,其中pressed状态定义了scaleX scaleY(拉伸 也就是变大 按压效果)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值