Android动画基本使用
来源:互联网 发布:lee levis 知乎 编辑:程序博客网 时间:2024/05/16 07:54
一、Frame Animation 帧动画
1、在res/drawable/目录下新建xx.xml文件,root element为<animation-list>,引入需要播放的帧图片:
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="a1.jpg" android:duration="200"/>
<item android:drawable="a2.jpg" android:duration="200"/>
</animation-list>
2、在code中为View设置背景view.setBackgroundResource(R.drawable.xx);
3、获取AnimationDrawable对象anim:view.getBackground();
4、播放动画:anim.start();
GameView gameView = (GameView) findViewById(R.id.game);
gameView.setBackgroundResource(R.drawable.weather_background);
AnimationDrawable animationDrawable = (AnimationDrawable) gameView.getBackground();
animationDrawable.start();
二、Tween Animation 补间动画
1、在res/anim/目录下新建xx.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@[package:]anim/interpolator_resource"
android:shareInterpolator=["true" | "false"] >
<alpha
android:fromAlpha="float"
android:toAlpha="float" />
<scale
android:fromXScale="float"
android:toXScale="float"
android:fromYScale="float"
android:toYScale="float"
android:pivotX="float"
android:pivotY="float" />
</set>
2、在code中获取Animation对象;
Animation hyperspaceJump = AnimationUtils.loadAnimation(this, R.anim.hyperspace_jump);
3、为object设置动画;
ImageView image = (ImageView) findViewById(R.id.image);
image.startAnimation(hyperspaceJump);
<set android:ordering=["together" | "sequentially"]>
<objectAnimator
android:propertyName="string"
android:duration="int"
android:valueFrom="float | int | color"
android:valueTo="float | int | color"
android:startOffset="int"
android:repeatCount="int"
android:repeatMode=["repeat" | "reverse"]
android:valueType=["intType" | "floatType"]/>
<animator
android:duration="int"
android:valueFrom="float | int | color"
android:valueTo="float | int | color"
android:startOffset="int"
android:repeatCount="int"
android:repeatMode=["repeat" | "reverse"]
android:valueType=["intType" | "floatType"]/>
</set>
2、在code中获取AnimatorSet:
AnimatorSet set = (AnimatorSet) AnimatorInflater.loadAnimator(myContext,
R.anim.property_animator);
3、为object设置动画;
set.setTarget(myObject);
set.start();
1、在res/drawable/目录下新建xx.xml文件,root element为<animation-list>,引入需要播放的帧图片:
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="a1.jpg" android:duration="200"/>
<item android:drawable="a2.jpg" android:duration="200"/>
</animation-list>
2、在code中为View设置背景view.setBackgroundResource(R.drawable.xx);
3、获取AnimationDrawable对象anim:view.getBackground();
4、播放动画:anim.start();
GameView gameView = (GameView) findViewById(R.id.game);
gameView.setBackgroundResource(R.drawable.weather_background);
AnimationDrawable animationDrawable = (AnimationDrawable) gameView.getBackground();
animationDrawable.start();
二、Tween Animation 补间动画
1、在res/anim/目录下新建xx.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@[package:]anim/interpolator_resource"
android:shareInterpolator=["true" | "false"] >
<alpha
android:fromAlpha="float"
android:toAlpha="float" />
<scale
android:fromXScale="float"
android:toXScale="float"
android:fromYScale="float"
android:toYScale="float"
android:pivotX="float"
android:pivotY="float" />
</set>
2、在code中获取Animation对象;
Animation hyperspaceJump = AnimationUtils.loadAnimation(this, R.anim.hyperspace_jump);
3、为object设置动画;
ImageView image = (ImageView) findViewById(R.id.image);
image.startAnimation(hyperspaceJump);
三、属性动画
<set android:ordering=["together" | "sequentially"]>
<objectAnimator
android:propertyName="string"
android:duration="int"
android:valueFrom="float | int | color"
android:valueTo="float | int | color"
android:startOffset="int"
android:repeatCount="int"
android:repeatMode=["repeat" | "reverse"]
android:valueType=["intType" | "floatType"]/>
<animator
android:duration="int"
android:valueFrom="float | int | color"
android:valueTo="float | int | color"
android:startOffset="int"
android:repeatCount="int"
android:repeatMode=["repeat" | "reverse"]
android:valueType=["intType" | "floatType"]/>
</set>
2、在code中获取AnimatorSet:
AnimatorSet set = (AnimatorSet) AnimatorInflater.loadAnimator(myContext,
R.anim.property_animator);
3、为object设置动画;
set.setTarget(myObject);
set.start();
0 0
- Android动画基本使用
- Android 动画 ObjectAnimator基本使用
- Android动画的基本使用
- android动画---ObjectAnimator基本使用
- Android属性动画的基本使用
- Android中补间动画的基本使用
- android动画的使用(上-基本用法)
- android三大动画的基本使用
- android三大动画的基本使用
- android 属性动画的基本使用
- Android基本动画详解
- android基本动画
- Android动画_基本
- android 基本动画
- 基本的android 动画
- Android 基本动画详解
- 基本动画的使用
- 属性动画基本使用
- 小型无人机地面站导航显示系统设计
- 工厂三兄弟之工厂方法模式
- 每日一vim(16-17)Visual模式
- Java关键字(四)static关键字(静态代码块)
- Coin Test(南阳oj204)(水题)
- Android动画基本使用
- 学习Android从0开始之基础篇(2)-AndroidMainfest.xml文件详解
- 答辩总结
- 物体运动--通过改变transform--键盘控制
- Servlet
- 对象
- 2015年大二上-数据结构-树和二叉树-2-(3)二叉树的构造
- isPrime
- code vs电话连线