如何在Android中自定义动画

如何在Android中自定义动画,第1张

在Android中自定义动画按照下面的步骤。

1、首先定义一个动画,如下图:

在上面代码中定义了一个旋转动画,包括了开始旋转角度(0°)和最后旋转结束角度(360°),和相对于自己的位置(控件的中心点)。

2、定义动画的简单属性,如下图:

上面代码定义了动画的持续时间和结束后书否保持原状。

3、选择执行的控件,如下图:

1. Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果,即是一种渐变动画;

2. Frame Animation:顺序播放事先做好的图像,是一种画面转换动画。

动画类型

下面先来看看Android提供的动画类型。Android的animation由四种类型组成

在XML文件中:

alpha渐变透明度动画效果

scale渐变尺寸伸缩动画效果

translate 画面转换位置移动动画效果

rotate 画面转移旋转动画效果

在Java 源码中定义了相应的类,可以使用这些类的方法来获取和 *** 作相应的属性:

AlphaAnimation渐变透明度动画效果

ScaleAnimation渐变尺寸伸缩动画效果

TranslateAnimation画面转换位置移动动画效果

RotateAnimation画面转移旋转动画效果

Android的动画归纳起来有帧动画,和属性动画。一般情况下,帧动画实现起来会相对简单很多,只要美工提供一帧一帧的图片就可以很容易的实现,代码不用很复杂。但是相对而言,弊端有很多,比如内存占用大,动画不流畅,所以很多时候,我们还是属性动画。

在Android4.0之前我们可以使用Animation实现简单的动画,但是一些复杂的动画,我们想要组合起来就会复杂很多,代码量也会大很多。所以Android4.0以后推出了ObjectAnim相关的API,会让动画更加简单。另外有些特别复杂的动画,我们可以自定义View在onDraw中实现相关的绘图,让画面重复绘制,产生动画效果,但这其实也应该属于属性动画的范畴,但确实Android中高级动画的实现方式。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11657409.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存