Bundleは、あるオブジェクトから別のオブジェクトに複数のパラメータを渡すのに便利なクラス・・・。
いろいろなところで使われるが、今回はIntentで起動したActivityにパラメータを渡す・・・。
activity_main.xmlで、
strings.xmlで、
という感じでButton1を用意・・・。
MainActivity.java側では、
Button1が押されたら、Bundle型のargsオブジェクトを生成し、putString, putInt, putBooleanでそれぞれパラメータを登録・・・。
Bundleオブジェクトごと登録できるputExtrasでargsをintent1に登録し、startActivityで起動・・・。
SubActivity.java側では、
getIntentで渡されたintentを取得・・・。
intent.getExtrasでBundle型argsとして取り出して、args.getStringでキー"str"の値、args.getIntで"num"の値、args.getBooleanで"bool"の値を取り出す・・・。
あとはTextViewにそれらの値を連結した文字列をセット・・・。
(別々のTextViewを用意せずに、1つのTextViewに文字列連結でやってしまって申し訳ない・・・。)
Button1を押すと、
このようにBundleでパラメータが渡されている・・・。
Sample/android/Bundle/Bundle/src/Bundle at master · bg1bgst333/Sample · GitHub