設定アクティビティに設定値の表示
設定アクティビティに設定値の表示

設定アクティビティに設定値の表示

設定アクティビティに設定値の表示 前項「設定アクティビティのカスタマイズ」で作成した設定アクティビティは、 「テキストを指定する設定項目」や「リストから選択する設定項目」の設定値は表示されません。設定値を確認するには、設定項目をクリックし、「テキスト編集ダイアログ」や「リスト選択ダイアログ」を表示する必要があります。

前項「設定アクティビティのカスタマイズ」で作成した設定アクティビティは、 「テキストを指定する設定項目」や「リストから選択する設定項目」の設定値は表示されません。設定値を確認するには、設定項目をクリックし、「テキスト編集ダイアログ」や「リスト選択ダイアログ」を表示する必要があります。 本項では、設定アクティビティに、「テキストを指定する設定項目」や「リストから選択する設定項目」の右側に設定値が表示されるようにします。

解説

  • 設定アクティビティの設定項目の右側に設定値を表示するためのウィジェットレイアウトを作成します。
  • 「テキストを指定する設定項目」「リストから1つの項目を選択する設定項目」「リストから複数の項目を選択する設定項目」の設定値を表示するプリファレンスクラスを作成します。
  • プリファレンスファイルに定義した「テキストを指定する設定項目」「リストから1つの項目を選択する設定項目」「リストから複数の項目を選択する設定項目」のプリファレンスクラスを、設定値を表示するプリファレンスクラスに変更します。

実装

アプリの仕様
  • アプリを起動すると、メインアクティビティが表示される。
  • オプションメニューの「Settings」を選択すると、設定アクティビティに移行する。
  • 設定アクティビティには、自前の設定項目が表示される。
  • メインアクティビティには、自前の設定項目の設定値が表示される。
  • 設定アクティビティの「テキストを指定する設定項目」「リストから1つの項目を選択する設定項目」「リストから複数の項目を選択する設定項目」の右側に設定値が表示される。(本項で追加)
プロジェクトを開く 「設定アクティビティのカスタマイズ」で作成したプロジェクトを開きます。 ウィジェットレイアウトの作成

「Project」ペインの「app > res > layout」を右クリックします。 右クリックメニュー「New > Layout Resource File」を選択します。

File name欄に「 widget_valuetext 」と入力します。 「OK」ボタンを押します。

設定値表示テキスト編集プリファレンスクラスの作成

「Project」ペインの「app > java > ドメイン.パッケージ名」を右クリックします。 右クリックメニュー「New > Java Class」を選択します。

クラス名欄に「 DisplayValueEditTextPreference 」と入力しエンターキーを押します。

(変更なし) 「OK」ボタンを押します。 「DisplayValueEditTextPreference」クラスができました。

設定値表示リスト選択プリファレンスクラスの作成

設定値表示テキスト編集プリファレンスクラスの作成と同様の手順で、以下の2つの設定値表示リスト選択プリファレンスクラスを作成します。 DisplayValueListPreference リストから1つの項目を選択するプリファレンスクラス。設定アクティビティに選択した設定値を表示する。 DisplayValueMultiSelectListPreference リストから複数の項目を選択するプリファレンスクラス。設定アクティビティに選択した設定値を表示する。 「DisplayValueListPreference」クラスファイルの内容を以下のようにします。

プリファレンスファイルの編集
  • 「EditTextPreference」を「 パッケージ名.DisplayValueEditTextPreference 」に変更します。
  • 「ListPreference」を「 パッケージ名.DisplayValueListPreference 」に変更します。
  • 「MultiSelectListPreference」を「 パッケージ名.DisplayValueMultiSelectListPreference 」に変更します。

実行

設定アクティビティに、 「テキストを指定する設定項目」や「リストから選択する設定項目」の設定値が、設定項目の右側に表示されます(赤枠部)。設定値を確認するにために設定項目をクリックする必要がなくなりました。 それ以外はの動作は、前項と変わりません。

関連ページ

  • 設定アクティビティの作成
  • 設定アクティビティのカスタマイズ - 前項
  • 設定アクティビティに設定値の表示 - 本項
  • 色設定プリファレンス - 次項
  • 設定アクティビティに設定色の表示