浅谈Android中视图动画的属性与使用

简介

Android动画主要包括视图动画和属性动画,视图动画包括Tween动画和Frame动画,Tween动画又包括渐变动画、平移动画、缩放动画、旋转动画。

Tween动画的基本属性

      目标 View;

      时常 duration;

      开始状态 fromXXX;

      结束动画 toXXX;

      开始时间 startOffset;

      重复次数 repeatCount;

      时间轴 interpolator(插值器)。

代码示例

xml实现

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android"
 android:fromXDelta="0"
 android:fromYDelta="0"
 android:toXDelta="100%"
 android:toYDelta="0"
 android:fillAfter="true"
 android:duration="3000">
</translate>

在代码中调用

Animation translate = AnimationUtils.loadAnimation(context,R.anim.translate);
imageView.startAnimation(translate);

补充:

1.对于缩放和旋转动画,有一个pivotX或者pivotY,表示的是缩放或旋转的中心点。

对应的属性值有三种写法。

     · 数值 50 表示当前控件的左上角加上50px;

     · 百分数 50% 表示当前控件的50%;

     · 百分数p 50%p 表示父控件的50%。

2.在一个动画集合里,可以通过设置stratOffset属性,来实现多个动画并行和串行的效果。

Frame动画

Frame动画的配置文件放在drawable目录下

<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android">
 <item android:drawable="@drawable/image1" android:duration="50"/>
 <item android:drawable="@drawable/image2" android:duration="50"/>
 <item android:drawable="@drawable/image3" android:duration="50"/>
</animation-list>
// 需要先设置成背景
imageView.setBackgroundResource(R.drawable.frame_anim);
AnimationDrawable frameAnimation = (AnimationDrawable) imageView.getBackground();
frameAnimation.start();

总结

以上就是这篇文章的全部内容了,希望本文的内容能对大家开发Android的时候有所帮助,如果有疑问大家可以留言交流。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。