Android动画总结

Android基础动画学习
1.Tween Animation 变换动画
2.Frame Animation 帧动画
3.Layout Animation 布局动画
4.Property Animation 属性动画
==>>首先是变化动画
分为以下:
Alpha:渐变透明动画
Scale:渐变尺寸缩放动画
Translate:位置移动动画
Rotate:旋转动画
以上动画的共同属性有:
(1)Duration 动画持续时间
(2)fillAfter 设置为true的时候,动画转化在动画结束后被应用
(3)fillBefore 设置为true的时候,动画转化在动画开始前被应用
(4)interpolator 动画插入器(加速,减速插入器)
(5)repeatCount 动画重复次数
(6)repeatMode 顺序重复or倒序重复
(7)startOffset 动画之间的时间间隔
Animation的实现方式:
(1)配置文件(res/anim) ——alpha、scale、translate、rotate
(2)java代码实现 ——AlphaAnimation、ScaleAnimation、TranslateAnimation、RotateAnimation
example代码实现:
//创建Alpha动画
AlphaAnimation alpha = new AlphaAnimation(0.1f,1.0f);
//设置动画时间
alpha.setDuration(5000);
//开始播放
img.startAnimation(alpha);
加载配置文件
//载入.xml动画文件
Animation scale = AnimationUtils.loadAnimation(TweenActivity.this,R.anim.scale_anim);
//开始动画
img.startAnimation(scale);
AlphaAnimation
(1)fromAlpha 动画起始时透明度 0.0表示完全透明
(2)toAlpha 动画终止时透明度 1.0表示完全不透明
ScaleAnimation
(1)fromX,toX 分别是起始和结束时x坐标上的伸缩尺寸
(2)fromY,toY 分别是起始和结束时y坐标上的伸缩尺寸
(3)pivotX,pivotY 分别为伸缩动画相对于x,y坐标开始的位置
TranslateAnimation
(1)fromXDelta,fromYDelta分别是起始时x,y的坐标
(2)toXDelta,toYDelta分别是结束时x,y的坐标
RotateAnimation
(1)fromDegrees 起始的角度
(2)toDegrees 终止的角度
(3)pivotX,pivotY分别为旋转动画相对于x,y的坐标开始位置
Animation集合
可以设置loadAnimation.setAnimationListener
三个方法
onAnimationStart
onAnimationRepeat
onAnimationEnd
在end之后再进行animation的添加
AnimationSet
可以在.xml文件中写


组合动画
Activity切换动画
使用overridePendingTransition方法


LayoutAnimation(布局动画)


为View Groups添加动画
使用LayoutAnimationController
LayoutAnimationController lac = new LayoutAnimationController(AnimationUtils.loadAnimation(this, R.anim.zoom_in));
lac.setOrder(LayoutAnimationController.ORDER_RANDOM);
listView.setLayoutAnimation(lac);
listView.startLayoutAnimation();

FrameAnimation 逐帧动画
使用animation-list标签来分组一个item标签集合
定义要显示的图片
指定显示它的时间(以毫秒为单位)

image.setBackgroundResource(R.drawable.anim_list);
AnimationDrawable frameAnimation = (AnimationDrawable)image.getBackground();
frameAnimation.start();
frameAnimation.stop();
// frameAnimation.setOneShot(false);
frameAnimation.isRunning();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值