博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android开发之View动画效果插补器Interpolator
阅读量:6593 次
发布时间:2019-06-24

本文共 1244 字,大约阅读时间需要 4 分钟。

插补器Interpolator

官网描述:An interpolator defines the rate of change of an animation. This allows the basic animation effects (alpha, scale, translate, rotate) to be accelerated, decelerated, repeated, etc.

Google翻译:Interpolator可以限定一个动画的变化率。 这样的话,可以对基本的动画效果(比如透明、缩放、位移、旋转)进行加速、减速、重复等

参考APIDemo中Views>Animation>Interpolator

下图是Interpolator的一些属性,可以对动画中Interpolator属性设置为以下资源内容,实现动画效果。

 

实例:(对输入框实现摇晃效果)

anim/cycle_7.xml

1 
2
//周期运动7次

anim/shake.xml

1 
2 3

R.id.pw为一个EditText。

1 public void onClick(View v) {2         Animation shake = AnimationUtils.loadAnimation(this, R.anim.shake);3         findViewById(R.id.pw).startAnimation(shake);         //给输入框pw设置动画属性4     }

 

--------------------------------------------------------------------------------------------------------------------------------------------------

插补器Interpolator

代码实现(对动画对象设置一个插补器,并实现插补器中的getInterpolation方法。该方法主要是数学知识,描述物体运动轨迹的计算公式,比如正弦,余弦,或者y=x等)

1 Animation shake = AnimationUtils.loadAnimation(this, R.anim.shake); 2 shake.setInterpolator(new Interpolator() { 3  4     @Override 5     public float getInterpolation(float x) { 6     //实现插补器的逻辑              int y = x;            7         return y; 8     } 9 });10 findViewById(R.id.pw).startAnimation(shake);

 

转载地址:http://bhdio.baihongyu.com/

你可能感兴趣的文章
ajax获取的全部是object,我要获取的是json
查看>>
OC Copy基本使用(深拷贝和浅拷贝)
查看>>
老舍:有了小孩以后,才知道一切事情没那么简单
查看>>
SpringBoot参数校验
查看>>
git 教程 : git 是如此的好用 branch
查看>>
03Go 类型总结
查看>>
js 读取 input[type=file] 内容,直接显示文本 | 图片
查看>>
如何用深度学习框架PaddlePaddle实现智能春联
查看>>
PHP To Go 转型手记 (二)
查看>>
新造了一个管理模板代码的工具 -- Pharah
查看>>
一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](十)
查看>>
输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数
查看>>
通用Windows平台应用程序开始恢复Win32功能
查看>>
Airbnb如何简化1000多位工程师的Kubernetes工作流程?
查看>>
AlphaZero进化论:从零开始,制霸所有棋类游戏
查看>>
Scrum Master的成功定义是什么?
查看>>
你的GitHub,怎么和我用的不太一样?
查看>>
Windows Server入门系列37 创建网络共享
查看>>
自己diy封装xp操作系统
查看>>
veritas升级及备份至磁盘两个问题简要说明
查看>>