2011年9月7日水曜日

Androidで画面遷移Thrice

さてさて、本日は依然疑問に思った画面遷移時のパラメータ渡しについて調べてみました。

調べた結果としては、思っていたより大分簡単に実装できそうです。

早速調べた結果を実行していきたいと思います。

まず今まで画面遷移の際に使用していたIntentクラスを使用します。


以前本ブログで使用した際には、


Intent intent = new Intent();
intent.setClassName(
       "パッケージ",
       "パッケージ.BAMonthHistory");
startActivity(intent);

このような感じで画面遷移を実施した部分で使用しました。

軽く調べてみたところ、このIntentクラスを使うことで凄くたくさんのことができそうですね。

とりあえず今回は、画面遷移です。

こちらのIntentクラスの、putExtra()メソッドを使うことで画面間のパラメータを渡すことができます。
受け取る際には、getIntent()メソッドを呼び出して、Intentを取得し、指定したキーで値を受け取るという
形になるみたいです。

サンプルとしては、

【遷移前画面】
intent.putExtra("sample", "data");

【遷移後画面】
Intent intent = getIntent();
intent.getStringExtra("sample");

という感じですね。こちらを画面上に実装すると、
遷移前の画面の赤枠部分のボタンを押して、次画面に遷移します。
すると、小さいですが、上記のサンプルロジックの『data』という文字を画面に表示することができました。

という感じで画面間のパラメータを送ることができます。

※なお、Serializableインターフェースを実装したオブジェクトクラスならば、
   画面間パラメータとして受け渡すことが可能です。

こちらのサンプルについては、hidecheckの日記 - Androidの画面遷移 Intentを使ってobjectを渡す方法
こちらのサイトがとてもわかりやすいサンプルとともに説明してくださっています。

実際に画面を作る際には、オブジェクト渡しで作成することが多くなりそうですね。

ではでは。

0 件のコメント:

コメントを投稿