【Java→Android】Viewを移動してみる1

言い換えると「Activityを作って移動する」をやってみた。

やりたいことは
(1)画面にボタンを1つくっつけて初回起動。
(2)ボタンをクリックすると次のVIEWへ移動。

(1)画面にボタンをくっつけて初回起動

これ、レイアウトエディタからやってみた。
res/layout/main.xmlを開いてボタンをくっつけ、プロパティの「ID」に名前をつける。
つけたのは「@+id/Btn1」

Activityクラスでは

	Button btn = ( Button ) this.findViewById( R.id.Btn1 );

こんな感じで呼び出せる。

(2)ボタンをクリックすると次のVIEWへ移動

最初のアクティビティのcreate時にボタンを(1)のように呼び出して、そこにリスナーを設定する。

	// ボタンをIDで取得
	Button btn = (Button) this.findViewById(R.id.Btn1);
	// リスナーの設定
	btn.setOnClickListener( new View.OnClickListener() {
		public void onClick( View v ) {
			moveView();
		}
	});

リスナーから呼び出されるメソッドをとりあえず空で記述する。ここではmoveViewメソッド。

	private void moveView() {

	}

次に、遷移先のActivityを準備。
res/layout以下に、遷移先のActivity用の定義ファイルを作成。面倒なのでmain.xmlをぱくって使用。またActivityクラスを、呼び出し元のcreateをぱくって簡単に作成。(ボタンの部分は不要)


で、ここが大事!
res直下にあるAndroidManifest.xmlの「Application Nodes」に作成したActivityを登録しないと呼び出せない。
呼び出し元のActivityの定義を真似て追加すること。


最後に、ボタンクリックのリスナー処理を記載。
ここでのポイントはIntentだが、省略する。

	private void moveView() {
		Intent intent = new Intent( SampleViewActivity.this, SongDtlActivity.class );
		startActivityForResult( intent, 0 );
	}

これでViewの一番簡単な遷移が実現できた。