Android学习笔记 - 动画篇 (Animations)
来源:互联网 发布:php redis 单例模式 编辑:程序博客网 时间:2024/05/07 21:45
1.什么是Animations
Animations是安卓框架为我们提供的一系列动画效果,这些效果可以应用在绝大多数控件中
2.Animations的分类
1.TweenedAnimations(渐变动画)
该类动画提供了旋转、移动、伸展、淡出等等效果
(1)Alpha:淡入淡出效果
(2)Scale:绽放效果
(3)Rotate:旋转效果
(4)Translate:移动效果
2.Frame by Frame Animtions(电影胶片效果)
该类可以创建一个Drawable序列,这些Drawable可以按照指定时间间歇一个一个的显示
3.Animations的第一种使用方法
1.创建一个AnimationSet对象
2.根据需要创建相应的Animation对象
3.根据软件动画的需求,为Animation对象设置相应的数据
4.将Animation对象添加到AimationSet对象当中
5.使用控件对象开始执行AnimationSet
AnimationSet aniSet = new AnimationSet(true);
AlphaAnimation alphaAni = new AlphaAnimation(1, 0); //参数:从X到Y的透明度
alphaAni.setDuration(1000); //执行时间
aniSet.addAnimation(alphaAni);
imageView.startAnimation(aniSet);
RotateAnimation rotateAni - new RotateAnimation(0, 360,
Animation.RELATIVE_TO_PARENT, 1f,
Animation.RELATIVE_TO_PARENT, 0f);
ScaleAnimation scaleAni = new ScaleAnimation(1, 0.1f, 1, 0.1f,
Animation.RELATIVE_TO_SELF, 0.5f,
Animation.RELATIVE_TO_SELF, 0.5f);
动画通用属性:
setDuration(long durationMills) //执行时间
setFillAfter(boolean fillAfter) //动画执行结束后,控件停留在结束的状态
setFillBefore(boolean fillBefore) //动画执行结束后,控件恢复原来的状态
setStartOffset(long startOffset) //设置动画执行之前的等待时间
setRepeatCount(int repeatCount) //设置动画重复执行的次数
4.Animations的第二种使用方法
1.在res文件夹下面新建一个名为anim的文件夹
2.创建xml文件,并首先加入set标签
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
</set>
3.在该标签当中加入rotate,alpha,scale,translate标签
<alpha
android:formAlpha="0.1"
android:toAlpha="1.0"
android:duration="1000" />
4.在代码当中使用AnimationUtils装载xml文件,并生成Animation对象
Animation ani = AnimationUtils.loadAnimation(AniActivity.this,R.anim.alpha);
imgAni.startAnimation(ani);
//完整示例
public class AnimationActivity extends Activity {private Button btnAlpha = null;private Button btnScale = null;private Button btnRotate = null;private Button btnTranslate = null;private ImageView imgAni = null;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.animation);btnAlpha = (Button) findViewById(R.id.btnAlpha);btnScale = (Button) findViewById(R.id.btnScale);btnRotate = (Button) findViewById(R.id.btnRotate);btnTranslate = (Button) findViewById(R.id.btnTranslate);imgAni = (ImageView) findViewById(R.id.imgAni);//淡入淡出效果btnAlpha.setOnClickListener(new OnClickListener() {public void onClick(View v) {AnimationSet aniSet = new AnimationSet(true);AlphaAnimation ani = new AlphaAnimation(1, 0);ani.setDuration(1000);aniSet.addAnimation(ani);imgAni.startAnimation(aniSet);}});//绽放效果btnScale.setOnClickListener(new OnClickListener() {public void onClick(View v) {AnimationSet aniSet = new AnimationSet(true);ScaleAnimation ani = new ScaleAnimation(1, 0, 1, 0);ani.setDuration(1000);aniSet.addAnimation(ani);imgAni.startAnimation(aniSet);}});//旋转效果btnRotate.setOnClickListener(new OnClickListener() {public void onClick(View v) {AnimationSet aniSet = new AnimationSet(true);RotateAnimation ani = new RotateAnimation(0, 180);ani.setDuration(1000);aniSet.addAnimation(ani);imgAni.startAnimation(aniSet);}});//移动效果btnTranslate.setOnClickListener(new OnClickListener() {public void onClick(View v) {AnimationSet aniSet = new AnimationSet(true);TranslateAnimation ani = new TranslateAnimation(0, 180, 0, 180);ani.setDuration(1000);aniSet.addAnimation(ani);imgAni.startAnimation(aniSet);}});}}
- Android学习笔记 - 动画篇 (Animations)
- android学习笔记之Animations
- 学习笔记——Animations动画了解
- Android Animations动画之简单学习
- Android学习之Animations动画介绍
- android之Animations(动画)
- Android Animations动画使用
- android动画Animations
- Android之 Animations动画
- Android动画(Animations)
- Android Animations动画详解
- Rexsee API介绍:Animations动画学习笔记及源码
- 【Android学习】Android动画效果--Animations(1)
- 【Android学习】Android动画效果--Animations(2)
- 【Android学习】Android动画效果--Animations(3)
- Android学习之Animations实现几种简单动画
- Android笔记 Animations
- Android Animations动画使用详解
- 自定义通信协议(实用)
- 情诗之一
- DOS下打jar包
- 学习中的一些小事
- windows下的mplayer,加上MPUI播放出错
- Android学习笔记 - 动画篇 (Animations)
- Study List
- COJ 1026 乘积最大 DP+高精度
- PowerDesigner15使用时的十五个问题
- js 闭包
- 项目步骤
- java问题诊断方法及工具
- ado 读写二进制数据
- SQL Server 2008 下载地址