你可以做這樣的事情,用你自己的圖像(人的形象):
主類:
package com.android.animation;
import android.app.Activity;
import android.os.Bundle;
public class Main extends Activity
{
Animation myView;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
myView = new Animation(this);
setContentView(myView);
}
}
動畫類:
package com.android.animation;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.view.View;
public class Animation extends View
{
Bitmap gBall;
float changingY;
public Animation(Context content)
{
super(content);
gBall = BitmapFactory.decodeResource(getResources(), R.drawable.ball);
changingY = 0;
}
@Override
protected void onDraw(Canvas canvas)
{
super.onDraw(canvas);
canvas.drawColor(Color.BLACK);
canvas.drawBitmap(gBall, (canvas.getWidth()/2), changingY, null);
if(changingY < canvas.getHeight())
changingY += 10;
else
changingY = 0;
invalidate();
}
}
XML文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
</LinearLayout>
事實上,如果你想要,你可以繼續,複製粘貼我的代碼,看看它是如何工作的(確保將圖像放入drawable-hdpi文件夾中)...你應該可以將它用作項目的模板。希望能幫助到你!
PS你當然可以,在ChangingY
變量更改爲ChangingX
(例如;當然,你將不得不改變像drawBitmap()
方法不同的夫婦的事情..不難雖然),使在一個水平線上將球舉...看看它是如何爲你工作的。
感謝您的回覆。讓我試試看...... – ninge 2012-08-09 20:02:48
我得到'myView = new Animation(this)的兩個錯誤; (動畫)不適用於參數(動畫),不適用於參數(動畫)不適用於參數(動畫) 「有什麼想法? – ninge 2012-08-09 20:19:13
這真的很奇怪..我的字面完全相同的代碼,因爲我張貼在eclipse中,它完美地工作..:O確保您的動畫類EXTENDS查看第二個錯誤。至於第一個錯誤...請確保您的Animation類中的構造函數設置正確(我在此處張貼的方式)。 – corecase 2012-08-09 20:26:36