http://www.atmarkit.co.jp/fjava/rensai4/android03/android03_1.html
キーワード
- Intent
- 「意図」「意志」「目的」の意味。
- Intentは、Androidアプリ作成ではActivityに並ぶほど重要とのこと。
- この章だけみてると、Activity間でのデータ受け渡しにつかうものというイメージだなぁ。
- onActivityResult()
- 呼び出し先から結果が返された際に呼び出されるメソッド
- getIntent()
- 渡されたIntentを取得
- getIntent().getExtras();
- すべての追加情報をBundleとして取り出す
- Bundleって、なんだ?
- Android Layout Editor
- 画面(Activity)の編集を行うGUIツール
- VBみたいにこの画面でGUIに関する設定を全部やるようなツールではない
- どちらかというとVC++のリソースエディタぽい
- だいたいの画面のデザインをするだけで、各部品のインスタンスつくったり、値の設定をするのはjavaソースの中。
- Android Manifest Editor
- いろいろな設定をするためのツール。
- 複数のActivityを使うためには、このツールを使ってApplication Nodesに設定する必要がある
画面遷移のIntent コード解説
第2引数に遷移先のActivityを指定してIntentを作成
Intent intent = new Intent(Main.this, Editor.class);
テキストビューからテキストを得る
TextView textView = (TextView)findViewById(R.id.TextView01); CharSequence text = textView.getText();
TextViewから取得したテキストを付加情報としてIntentに追加。
putExtra()では型は気にせず渡したいものは何でも渡せると思ってよい。
intent.putExtra("TEXT", text);
作成したIntentとリクエストコードで遷移先Activityを起動。
第2引数は呼び出し元のActivityで定義したリクエストコードです。
このリクエストコードは呼び出し先のActivityから戻ってきたときに使用するので定数にしてあります。
startActivityForResult(intent, SHOW_EDITOR);
はまりポイント
サンプルのDual Activities.zipをインポートしたらOnClick()のとこでエラーが。
@Overrideを消したら、エラー消えた。
解説読むとないとダメみたいに書いてあるけど、問題なく動いた。