使用J2ME技術實現簡單的動畫(附代碼實現)
作者:陳躍峰
出自:http://blog.csdn.net/mailbomb
在J2ME程式開發過程中經常需要實現遊戲動畫,例如簡單的文字閃動,複雜的遊戲介面變化等等,下面簡單的介紹一下動畫的原理,並附實現代碼。
動畫原理就是利用人的視覺暫留的生理特性,實現出來的一種假象。下面的代碼就是不斷的變化繪製的內容,實現文字的閃動。
程式的邏輯:每隔0.2秒變換一次繪製的內容,如果螢幕上沒有繪製文字,則繪製,否則繪製文字。
實現代碼如下:
package welcomecanvas;
import javax.microedition.lcdui.*;
public class DongHuaCanvas extends Canvas implements Runnable {
//標誌是否繪製字串
boolean b = true;
public DongHuaCanvas() {
//啟動線程
Thread t = new Thread(this);
t.start();
}
protected void paint(Graphics g) {
//清屏
g.setColor(255,255,255);
g.fillRect(0,0,getWidth(),getHeight());
g.setColor(0,0,0);
//根據標誌變數繪製字串
if(b == true){
g.drawString("閃爍的文字",50,50,Graphics.LEFT | Graphics.TOP);
}
}
/**
* 線程方法,每隔0.2秒改變一次標誌變數,並重新繪製字串
*/
public void run(){
while(true){
//等待0.2秒
try{
Thread.sleep(200);
}catch(Exception e){}
//改變標誌變數
b = !b;
//重新繪製
repaint();
}
}
}
而複雜的動畫和該程式比較,只是每次繪製不同的圖片,把線程中的動作做的複雜一下罷了。