自定义动画
2016-02-04 15:07
190 查看
自定义动画,四种动画效果都是要继承 Animation
在MainActivity中:
public class CustomAnimation extends Animation { /** * 粗略测试一下,宽高 *3 ,如果父容器宽高是屏幕大小,则是屏幕大小 * @param width 该容器的宽 * @param height 该容器的高 * @param parentWidth 父容器的宽 * @param parentHeight 父容器的高 */ @Override public void initialize(int width, int height, int parentWidth, int parentHeight) { Log.i("test", width + " " + height + " " + parentWidth + " " + parentHeight); super.initialize(width, height, parentWidth, parentHeight); } /** * 启动此类就会不断的执行 applyTransformation 方法 * * @param interpolatedTime 不管设定动画效果为多少秒, 它都会从 0 执行 到 1,float型, 用此参数就可以设置出动画效果 * @param t */ @Override protected void applyTransformation(float interpolatedTime, Transformation t) { Log.i("test", interpolatedTime + " "); //设置透明度 // t.setAlpha(interpolatedTime); //设置旋转动画, 300,300 会一下子跳到 300,300坐标 // t.getMatrix().setTranslate(300, 300); //设置旋转动画, 慢慢的旋转到 300,300坐标(指标秒数内) // t.getMatrix().setTranslate(300 * interpolatedTime, 300 * interpolatedTime); //左右摇摆 , 上下不动 //(float) (Math.sin(interpolatedTime*20)*50) x轴根据数学公式设定其左右摇摆, y轴 为0,表示不动 t.getMatrix().setTranslate((float) (Math.sin(interpolatedTime * 20) * 50), 0); super.applyTransformation(interpolatedTime, t); }
在MainActivity中:
CustomAnimation ca; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ca = new CustomAnimation(); ca.setDuration(1000); findViewById(R.id.id).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { v.startAnimation(ca); } }); }
相关文章推荐
- python 静态方法和类方法
- Eclipse集成反编译插件jd-Eclipse
- nginx 多站点配置方法集合
- symfony2 Event Listener(2)
- untiy 3d ShaderLab读后感_0_目录
- iOS-圆形图像显示(UIImageView)
- 机器学习技法 笔记二 dual support vector machine
- JAVA反序列化漏洞
- 前端零基础学习提纲
- AR儿童绘本技术实现-静态着色
- UVa 1585 Score
- mybatis generator学习
- Nginx反向代理和负载均衡部署指南
- Java并发之(3):锁
- 10大优秀的移动Web应用程序开发框架推荐
- HYSBZ/BZOJ 1036 [ZJOI2008] 树的统计Count - 动态树LCT
- Java Criteria表关联查询(两个表未定义关联关系)
- Java实现UDP之Echo客户端和服务端
- 【Android】3.15 短串分享功能
- DBLINK的session无法关闭,报异常!