android 动画api
来源:互联网 发布:excel数据匹配 编辑:程序博客网 时间:2024/05/07 09:11
android动画分几种?
答:两种;
逐帧动画和补间动画。
逐帧动画,连续而快速地显示一个时间序列。
补间动画,对一副图像施用简单的变换,例如旋转,淡入淡出,平移等。
demo1 逐帧动画
package com.androidbook.shapeshifter;import android.app.Activity;import android.graphics.drawable.AnimationDrawable;import android.graphics.drawable.BitmapDrawable;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.ImageView;public class FrameAnimationActivity extends Activity { AnimationDrawable mframeAnimation = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.framebyframe); // Handle Start Buttonfinal Button onButton = (Button) findViewById(R.id.ButtonStart);onButton.setOnClickListener(new View.OnClickListener() {public void onClick(View v) {startAnimation();}});// Handle Stop Buttonfinal Button offButton = (Button) findViewById(R.id.ButtonStop);offButton.setOnClickListener(new View.OnClickListener() {public void onClick(View v) {stopAnimation();}}); }private void startAnimation(){ ImageView img = (ImageView)findViewById(R.id.ImageView_Juggle); BitmapDrawable frame1 = (BitmapDrawable)getResources().getDrawable(R.drawable.splash1); BitmapDrawable frame2 = (BitmapDrawable)getResources().getDrawable(R.drawable.splash2); BitmapDrawable frame3 = (BitmapDrawable)getResources().getDrawable(R.drawable.splash3); // Get the background, which has been compiled to an AnimationDrawable object. int reasonableDuration = 250; mframeAnimation = new AnimationDrawable(); mframeAnimation.setOneShot(false);// loop continuously mframeAnimation.addFrame(frame1, reasonableDuration); mframeAnimation.addFrame(frame2, reasonableDuration); mframeAnimation.addFrame(frame3, reasonableDuration); img.setBackgroundDrawable(mframeAnimation); mframeAnimation.setVisible(true,true); mframeAnimation.start();}private void stopAnimation(){mframeAnimation.stop();mframeAnimation.setVisible(false,false);}}
demo2 补间动画
package com.example.animationdemo;import android.os.Bundle;import android.support.v7.app.ActionBarActivity;import android.view.animation.Animation;import android.view.animation.AnimationUtils;import android.widget.ImageView;public class MainActivity extends ActionBarActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// AnimationDrawable juggle = (AnimationDrawable) getResources()// .getDrawable(R.drawable.juggle);ImageView img = (ImageView) findViewById(R.id.img);// img.setBackgroundDrawable(juggle);Animation alpha = AnimationUtils.loadAnimation(this, R.anim.alpha);img.startAnimation(alpha);}}动画文件
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"><alpha android:fromAlpha="0.2" android:toAlpha="1.0"android:duration="3000" /></set>
0 0
- android 动画api
- android动画详解三 动画API概述
- 【Android API】Android动画源码分析(一)
- Android动画——Android动画常用API
- 【Android API指南】动画和图像概述
- Android API Guide --- PropertyAnimation(属性动画)
- 【译】Android API Guide 之 属性动画
- Android API 24 动画的使用方法
- 【Android API指南】动画和图像(1) - 属性动画
- 【Android API指南】动画和图像(2) - 视图动画
- 【Android API指南】动画和图像(3) - 图片动画
- 【Android API指南】动画和图像(5) - OpenGL
- 【Android API指南】动画和图像(6) - 硬件加速
- Android动画的分类(属性动画和视图动画)与使用总结(参照官方api)
- 属性动画API概述
- HTML5 requestAnimationFrame( ) 动画API
- js动画api
- Android动画--视图动画
- LeetCode 150. Evaluate Reverse Polish Notation
- eclipse android sdk 无法更新解决办法
- iOS的数据保存-NSUserDefaults
- Android 作品
- GIT 提交错误 fatal: LF would be replaced by CRLF
- android 动画api
- 我学cocos2d-x (三) Node:一切可视化对象的祖先
- getRawX()与getX()区别
- android 输入法 api
- 安装DirectX SDK
- ViewGroup.layout(int l, int t, int r, int b)四个输入参数的含意
- matlab 2014a 改为英文版本
- Eclipse不提示的解决办法
- oj处理成绩(c++类训练)