2011年02月25日
「ブロック崩しを、Android に移植」
みなさん、おはようございます。
今日は冬の終わりを感じる様な朝ですね~
Javaアプレットの次は、
いよいよ、Android ですね~
Graphicsクラスを、Canvasクラスに置き換えたり、
Colorクラスを、int Color.rgb( r, g, b );
わりと少ない修正で、アンドロイドに置き換えられますよ~
あとは、キーボードの読み込みや、
コールバックの書き方だけですね~
よければ、こちらにサンプルを紹介します。
/*
画面再描画の仕組みを提供するクラス
*/
class RedrawHandler extends Handler
{
private View view;
private int delayTime;
private int frameRate;
public RedrawHandler(View view, int frameRate) {
this.view = view;
this.frameRate = frameRate;
}
public void start() {
this.delayTime = 1000 / frameRate;
this.sendMessageDelayed(obtainMessage(0), delayTime);
}
public void stop() {
delayTime = 0;
}
@Override
public void handleMessage(Message msg) {
view.invalidate();
if (delayTime == 0) return; // stop
sendMessageDelayed(obtainMessage(0), delayTime);
}
}
frameRateに30と入れれば、
1秒間に30フレームの割り込みが入ります。
RedrawHandler handler = new RedrawHandler(this, 30);
handler.start();
呼び出し側は、View クラスで、ここでは、(this, 30)
とすれば、OKです。
Eclipse と、android SDKとエミュレーターの環境構築は、
こちらの書籍を今回使用しました。
私の場合、ドキュメントのフォルダー名に、
名前の漢字が使われていたために、
エミュレーターが起動しないで、
やや手こずってしまいました。
仕方なしに、アカウントを再度作成して、
新しいものでログインしています(^^;;
動いたところまでは良いのですが・・・
あらら・・・動作が遅くてゲームになりません。
エミュレーターですから仕方ないですね~
次は、実機で試したいところです。(^^)/
今日も「いいスマイル」で行きましょう!
ツイッターはじめました~フォロー待ってま~す!!
↓↓↓下記の3つのバナーをクリックして下さい。ランキングUPにご協力をお願いします。↓↓↓
投稿者 shiozumi : 10:39