SKY外语计算机学习
标题:
安卓frame动画
[打印本页]
作者:
rogan
时间:
2013-5-18 12:14
标题:
安卓frame动画
Activity01.java
package com.yarin.android.Examples_05_17;
import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
public class Activity01 extends Activity
{
private GameView mGameView;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
mGameView = new GameView(this);
setContentView(mGameView);
}
}
复制代码
GameView .java
package com.yarin.android.Examples_05_17;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.drawable.AnimationDrawable;
import android.graphics.drawable.Drawable;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
public class GameView extends View {
/* 定义AnimationDrawable动画 */
private AnimationDrawable frameAnimation = null;
Context mContext = null;
/* 定义一个Drawable对象 */
Drawable mBitAnimation = null;
public GameView(Context context) {
super(context);
mContext = context;
/* 实例化AnimationDrawable对象 */
frameAnimation = new AnimationDrawable();
/* 装载资源 */
// 这里用一个循环了装载所有名字类似的资源
// 如“a1.......15.png”的图片
// 这个方法用处非常大
for (int i = 1; i <= 15; i++)
{
int id = getResources().getIdentifier("a" + i, "drawable", mContext.getPackageName());
mBitAnimation = getResources().getDrawable(id);
/* 为动画添加一帧 */
// 参数mBitAnimation是该帧的图片
// 参数500是该帧显示的时间,按毫秒计算
frameAnimation.addFrame(mBitAnimation, 500);
}
/* 设置播放模式是否循环false表示循环而true表示不循环 */
frameAnimation.setOneShot(false);
/* 设置本类将要显示这个动画 */
this.setBackgroundDrawable(frameAnimation);
}
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
frameAnimation.start();
return super.onTouchEvent(event);
}
public boolean onKeyUp(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_DPAD_UP:
/* 开始播放动画 */
frameAnimation.start();
break;
}
return true;
}
}
复制代码
作者:
rogan
时间:
2013-5-18 12:53
标题:
图片资源
a1
a2
a3
a4
a5
a6
a7
a8
a9
a10
a11
a12
a13
a14
a15
a16
作者:
rogan
时间:
2013-5-18 13:20
图片资源
金山快盘附件
:
drawable.rar
(192.25KB)
欢迎光临 SKY外语计算机学习 (http://join.skywj.com/)
Powered by Discuz! X2.5