次の XML があります。
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
android:title="@string/preference_xxx_category">
<CheckBoxPreference
android:title="@string/preference_xxx_dual_mode_title"
android:summary="@string/preference_xxx_dual_mode_summary"
android:key="xxxDualModePreference" />
</PreferenceCategory>
</PreferenceScreen>
GUIを使用して、次のコードとしてロードします
public class Preferences extends SherlockPreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
this.getPreferenceManager().findPreference("xxxDualModePreference").setDefaultValue(Utils.isDualCoreDevice());
this.getPreferenceManager().findPreference("xxxDualModePreference").setEnabled(Utils.isDualCoreDevice());
// Once the GUI is shown, I realize my preference UI check box is not being ticked.
デフォルト値は、デバイスの CPU コアの数によって異なります。そのため、XML でデフォルト値を特定することはできません。
ただし、Java コードでデフォルト値を指定すると、アプリケーションを初めて起動したにもかかわらず、UI がそれを反映していないことに気付きます。
私が見逃した他のステップはありますか?
ありがとう。