Android 属性动画理解
来源:互联网 发布:三菱plc编程软件安卓版 编辑:程序博客网 时间:2024/05/21 11:07
所谓属性动画在我的理解就是:
1、修改对象的属性
2、形成动画效果
先说第一点:
修改对象属性
‘
tv=(TextView) findViewById(R.id.textview);
tv.setTranslationX(100f);
最简单的程序,R.id.textview就是Hello World!,这个setTranslationX(100f)就是将他平移到x轴100f的位置。
当你完成这段代码,tv自然就到了x轴100的位置是没有动画效果的,那我们如果实现动画效果呢
也就是第二点:
形成动画属性
想象下,如果我们让这个tv在1s内均匀的从(0,0)移动到(0,100)那么这样在肉眼看来是不是就是动画了呢?
so,android提供了这么个类,
int i=0; ValueAnimator anim=ValueAnimator.ofFloat(0f,100f); anim.setDuration(600); anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { @Override public void onAnimationUpdate(ValueAnimator animation) { i++; Log.i(TAG, "i="+i+"----onAnimationUpdate: "+animation.getAnimatedValue()); } }); anim.start();
10-26 10:22:32.960 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=1----onAnimationUpdate: 0.010-26 10:22:33.031 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=2----onAnimationUpdate: 0.010-26 10:22:33.335 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=3----onAnimationUpdate: 52.0937810-26 10:22:33.476 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=4----onAnimationUpdate: 81.6690310-26 10:22:33.539 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=5----onAnimationUpdate: 92.35609410-26 10:22:33.546 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=6----onAnimationUpdate: 94.9013810-26 10:22:33.562 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=7----onAnimationUpdate: 97.0440410-26 10:22:33.585 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=8----onAnimationUpdate: 98.5567210-26 10:22:33.601 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=9----onAnimationUpdate: 99.5722410-26 10:22:33.625 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=10----onAnimationUpdate: 99.9828710-26 10:22:33.640 8692-8692/com.szgroup.wy.androidtest I/Main2Activity: i=11----onAnimationUpdate: 100.0
我们可以看到在600ms的时间内,由0f平滑的过度到了100f
so
ValueAnimator anim=ValueAnimator.ofFloat(0f,100f); anim.setDuration(6000); anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { @Override public void onAnimationUpdate(ValueAnimator animation) { tv.setTranslationX((Float) animation.getAnimatedValue()); } }); anim.start();
这样我们就完成了一个简单的平移动画,且修改了对象的属性
ps:这个时间(anim.setDuration(6000)),为了看的更清楚
0 0
- Android 属性动画理解
- Android中的属性动画理解
- Android动画--属性动画
- android动画 -- 属性动画
- Android动画-属性动画
- Android动画【属性动画】
- Android动画--属性动画
- 属性动画的理解
- Android属性动画从使用到深入理解
- android属性动画--布局动画
- Android 动画之属性动画
- Android中的动画,属性动画
- android-属性动画、视图动画
- Android动画之属性动画
- android动画 属性动画详解
- Android笔记----动画、属性动画
- Android动画之属性动画
- android 动画 之 属性动画
- protobuf-2.5.0/google/protobuf/repeated_field.h:322:63: error: macro "cast" requires 2 arguments, bu
- 上位机 概述
- IbatisSessionFactory
- iOS 自定义Tabbar 改变点击背景颜色
- Java常用开发工具介绍
- Android 属性动画理解
- 我的博客
- angular好用的插件集合(持续更新中)
- 前端框架增加自定义fontIcons的方法
- 连续子数组的最大和
- Three.js 学习记录 之 纹理加载
- jquery点击table表头排序
- 润乾报表的集算报表V5.0集成到WEB项目
- UVA 11468 Substring(AC自动机+树上的动态规划)