androidでゲームアプリ制作 -3ページ目

androidでゲームアプリ制作

androidアプリ開発の記録です.
覚書メインです。
書かれている内容が確実に正しいという保証はありません。

●自作ViewをXMLレイアウトに追加

・自作Viewのコンストラクタの引数を変更。
XMLからはデフォルトとは違うコンストラクタが呼び出されるためらしい。

------
public GameView(Context context,AttributeSet attributeSet) {
// TODO 自動生成されたコンストラクター・スタブ
super(context, attributeSet);
以下略
------

・XMLに自作Viewのタグを追加
タグは自作Viewのクラス名をパッケージ名を含めて記述する。
idは後に参照するので追加しておく。

------
<LinearLayout ・・・>
<test.sample.GameView android:id="@+id/gameView" />
</LinearLayout>
------

以下のURLにサンプルと解説がある。
XMLで自作のViewを使う為に
http://monkuro.blogspot.jp/2009/09/xmlview.html

●ボタン入力を取得
XMLで設置したボタン入力を同様に設置したViewに伝える

・XMLのレイアウトで、ボタンのidを設定しておく。

------
<Button android:id="@+id/buttonA" ・・・></Button>
------

・idを使ってXMLで設置したボタンを取得
findViewByIdメソッドを使う
・取得したボタンオブジェクトに対してリスナーを追加する
setOnTouchLisnerの引数の匿名クラスは補完入力で一気に自動生成されるのが嬉しい。

------
buttonA = (Button)findViewById(R.id.buttonA);

buttonA.setOnTouchListener(new OnTouchListener() {

public boolean onTouch(View v, MotionEvent event) {
// ここに、タッチ時の動作を記述する
return false;
}
});
------
画面の描画に、SurfaceViewクラスを使う。
普通のViewクラスよりも早いらしい

以下のURLのサンプルで、基本の使い方はわかると思う。

SurfaceViewで高速描画する(1)
http://techbooster.jpn.org/unclassified/1195/

気にすることは、利用するBitmapオブジェクトを、利用できるスコープで宣言しておくこと。