コンピュータクワガタ

かっぱのかっぱによるコンピュータ関連のサイトです

Androidアプリ入門 No.45 PreferencesActivityのDialogPreferenceとEditTextPreferenceの設定

PreferencesActivity

DialogPreferenceとEditTextPreferenceの設定

DialogPreferenceを使用するとDialogを開いてその中から選択したり、テキストを入力したりする設定画面が作成性できる。DialogPreferenceには、EditTextPreferenceとListPreferenceという2つのPreferenceが用意されている。まず、DialogPreferenceの主な属性を確認する。

属性 内容
dialogIcon ダイアログに表示するアイコン。
dialogLayout カスタムダイアログを作成するときに使用する。
dialogMessage 画面に表示するメッセージ。
dialogTitle ダイアログのタイトルを指定する。
negativeButtonText ダイアログの「キャンセル」ボタンの名称を指定する。
positiveButtonText ダイアログの「OK」ボタンの名称を指定する。

DialogPreferenceの例として、基本的なEditTextPreferenceは以下のようにpreferences.xmlを記述する。

<PreferenceScreen
        xmlns:android="http://schemas.android.com/apk/res/android">
    <EditTextPreference
        android:key="edit"
        android:dialogTitle="文字を入力してください"
        android:title="テキスト入力"
        android:summary="テキストを設定します。" />
</PreferenceScreen>

実行結果は以下。

次に、dialogMessageとアイコン、ボタンの名称を確認する。アイコンは今まで通り、res/drawable以下に、解像度別にファイルを用意する。今回はデフォルトで用意されているiconファイルを使用した。prefernces.xmlは以下。

<PreferenceScreen
        xmlns:android="http://schemas.android.com/apk/res/android">
    <EditTextPreference
        android:key="edit"
        android:dialogIcon="@drawable/icon"
        android:dialogTitle="文字を入力してください"
        android:dialogMessage="それでもやるんですか?"
        android:positiveButtonText="はい!"
        android:negativeButtonText="いいえ"
        android:title="テキスト入力"
        android:summary="テキストを設定します。" />
</PreferenceScreen>

実行結果は以下、dialogMessageが表示され、アイコン、ボタンの名称が変わっている。