1

XML から設定を正しく初期化していると思います。My Preferences 画面も適切に機能し、ユーザーが選択した正しい設​​定が反映されます。

ただし、その設定画面を最初に呼び出したときは、どの設定もオン (チェックボックス) または選択 (リスト) されていません。もちろん、これは現在の (デフォルト/初期) 値を反映していないため、ユーザーを混乱させます。

設定画面を呼び出すために私がすることは

startActivity(new Intent(this, EditPreferences.class));

そして、私のEditPreferencesクラスには以下のみが含まれています:

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.usersettings);
  }

デフォルト設定で視覚表示を事前に初期化するように指示する場所や方法がわかりません。

欠けているのはどこかの 1 行だけだと思いますが、どこにあるのかわかりません: XML ファイル? のメソッドをオーバーライドしますEditPreferencesか? 他の?

4

2 に答える 2

1

設定でデフォルト値を指定できます (たとえば、xml レイアウトで):

<EditTextPreference android:defaultValue="whatever" />
于 2011-05-20T13:52:12.867 に答える
1

XML 自体でデフォルト値を定義できませんか?

<CheckBoxPreference ...
   android:defaultValue="true" 
   ... />
于 2011-05-20T13:53:37.263 に答える