ページ

2013年10月27日日曜日

SettingActivityで設定した値をFragmentに反映する

※ Android Studio(I/O Preview) 0.3.1を使用しています。

前回で、設定画面を呼び出すところまではできたので、今度は値を取得する方法です。

Android StudioでTarget SDKをAndroid4.3にして、新規プロジェクトをBlankActivityで作成すると、
Action BarとFragmentationが使用された状態でソースが作成されます。

今回は、起動時に、設定データを読み出し、画面に表示する方法を調べました。


プロジェクトは前回の状態から始めます。

1.fragmentation_main.xmlにPlain TextViewを追加して、idを@+id/textView2にします。


2.MainActivity.javaのPlaceholderFragmentionCreateViewに設定データを取得してきて、
先ほど追加したtextView2に設定します。
ここでは、キーがexample_textの値がtextView2に表示することにしました。



3.これで、起動するとデフォルトのままだとJhon Smithと表示されます。


設定値は、SharedPreferencesを使用して、取得することができます。
SharedPreferences自体は、PreferenceManager.getDefaultSharedPreferencesを使用して取得します。
getDefaultSharedPreferencesの引数はContextですが、Activityが持っているので、Fragmentが所属するActivityをgetActivity()で取ってやり、設定しました。

この辺りは、探してもあまり見つからなかったので、まずいところがあるのかもしれません。

次は、設定画面で変更した値を画面に反映するのを調べます。

SettingActivityで設定した値をFragmentに反映する その2


参考:
dynamic - Android : How do I update my textView in a Fragment - Stack Overflow
Android(開発)/ちょっとした設定の永続化 - 俺の基地

0 件のコメント:

コメントを投稿