android之自定义动画
来源:互联网 发布:手机玩lol软件 编辑:程序博客网 时间:2024/04/30 12:56
有时候我们需要做一些高级的特效,普通的动画已经满足不了我们的需要了,为此我们需要自定义一些动画来使用。
那么如何自定义动画呢?
首先需要定义一个类来继承Animation,然后只需要实现它的applyTransformation方法就可以了。
这个方法有两个参数,一个是interpolatedTime就是插值器的时间因子,取值范围为0到1.0.
另一个是Transformation,它是矩阵的封装类,你可以通过这个类来获取当前的矩阵对象,然后通过
matrix对象的变换操作来实现其他效果的动画。
接下来我们举一个例子:
class ScrollAnimation extends Animation { private float mCenterWidth; private float mCenterHeight; private Camera camera = new Camera(); @Override public void initialize(int width, int height, int parentWidth, int parentHeight) { super.initialize(width, height, parentWidth, parentHeight); //设置默认时长 setDuration(2000); //动画结束后保留状态 setFillAfter(true); //设置默认插值器 setInterpolator(new BounceInterpolator()); mCenterHeight = width / 2; mCenterWidth = width / 2; } @Override protected void applyTransformation(float interpolatedTime, Transformation t) { super.applyTransformation(interpolatedTime, t); Matrix matrix = t.getMatrix(); camera.save(); camera.rotateY(30 * interpolatedTime); camera.getMatrix(matrix); camera.restore(); matrix.preTranslate(mCenterWidth, mCenterHeight); matrix.postTranslate(-mCenterWidth, -mCenterHeight); }}
0 0
- android之自定义动画
- Android开发之自定义动画
- Android之Toast自定义动画
- Android图形图像之自定义补间动画
- Android 自定义View动画篇之基础
- Android 之自定义加载帧动画
- Android 自定义View动画篇之进阶
- Android自定义view之属性动画初见
- Android自定义控件之扫描动画UI
- android自定义view之加载动画ColorBall
- android自定义view之加载动画ColorBall
- android之Animation自定义动画轨迹
- Android自定义动画之实现3D翻转的动画
- Android 动画系列之自定义补间动画
- Android动画效果之自定义ViewGroup添加布局动画
- Android动画效果之自定义ViewGroup添加布局动画
- Android动画效果之自定义ViewGroup添加布局动画
- Android动画效果之自定义ViewGroup添加布局动画
- Linux 用户管理
- strcpy/strstr/strtok函数实现——菜鸟版
- LeetCode-First Unique Character in a String
- BOOST编译
- VS2012注册
- android之自定义动画
- 增长黑客
- Fiddler使用
- 开始博客之路
- 六种方式实现hibernate查询
- ViewTreeObserver
- RAC中Multicast的实现原理分析
- 程序设计进阶 编程题#4:Tomrrow never knows?
- spoj D-query 区间不同数个数 主席树||离线+树状数组