ちょっと間が開いてしまいました。あいだ開けると忘れちゃうんですよね…。思い出しながら行きます。
コンテンツビューを追加する
今は、プロジェクトを自動生成したままなので、コンテンツに activity_main.xml が設定されています。
手探りなので、何が正解なのかわかっていませんが…、今回は動的なビューを作りたいので、Java で書くコンテンツビューを追加します。
GameViewクラスの作成
ゲームをするメインのコンテンツビューのクラスを作成します。
administrator.game15
フォルダを選択し、アシストメニューからNew → Java Class
を選択します。
クラス名を設定して、OKボタンを押します。
GameViewが追加されました。
Viewクラスから継承させます。
import android.view.View;
public class GameView extends View {
}
これで、GameView が出来ました。
GameViewを表示
GameViewで実際に描画をする準備をしていきます。
必要なクラスをインポートします。
import android.view.View;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
paintオブジェクトと、コンストラクタを用意します。
public class GameView extends View {
private Paint paint = new Paint();
public GameView(Context context){
super(context);
}
描画メソッドonDraw
をオーバーライドし、何か書いてみます。
@Override
public void onDraw(Canvas canvas){
paint.setTextSize(48);
canvas.drawText("15 Game", 0, 100, paint );
}
コンテンツビューの置き換え
MainActivity.java に戻り、ビューを置き換えます。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_main);
setContentView(new GameView(this));
}
実行してみると、
うまくいきました!
前回、xmlで書いたタイトルは消してしまいましたが・・・、手探りですが、、、前進します!
ソースコード
以下に公開しています。
https://github.com/et79/Game15
コメント