EditTextPreferences와 TimePickerPrefernce (내가 만든 것)가 하나의 CheckBoxPreference와 함께 있고 EditTextPreference 또는 TimePickerPreference가 저장되지 않지만 CheckBox는 저장하지 않습니다. 나는 그것이 내 PreferenceActivity 서브 클래스에서 가지고있는 최소한의 것이었을 것이라고 생각했지만 체크 박스가 저장되는 방법을 보았을 때 그것이 맞는지 확실하지 않다.내 PreferenceActivity 대화 환경 설정이 저장되지 않습니다.
나는 모든 것을 검색했는데 환경 설정이 자동으로 저장되어야한다고 생각하는 것 같습니다. 왜 그런지는 알 수 없습니다. 여기
내 환경 설정 XML 파일입니다
<PreferenceCategory android:title="@string/settings_general_header" >
<EditTextPreference
android:defaultValue="15"
android:summary="@string/settings_time_to_sleep"
android:title="@string/settings_time_to_sleep_title"
android:numeric="integer" />
<EditTextPreference
android:defaultValue="90"
android:summary="@string/settings_sleep_cycle_time_summary"
android:title="@string/settings_sleep_cycle_minutes"
android:numeric="integer" />
<EditTextPreference
android:defaultValue="5"
android:summary="@string/how_many_results"
android:title="@string/settings_results_to_show_title"
android:numeric="integer" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/wakeupat_settings_header" >
<CheckBoxPreference
android:key="@string/save_wakeupat_time"
android:title="@string/save_wakeupat_time" android:defaultValue="false"/>
<TimePickerPreference
android:dependency="@string/save_wakeupat_time"
android:title="@string/wakeupat_preferred_time" />
</PreferenceCategory>
여기 내 PreferenceActivity를 서브 클래스입니다 : 당신이 모든 컨트롤에 android:key
를 정의 할 필요가
package com.krej.timeforbed;
import java.util.List;
import android.os.Bundle;
import android.preference.PreferenceActivity;
import android.preference.PreferenceFragment;
import android.preference.PreferenceManager;
import android.util.Log;
import android.widget.Button;
public class Settings extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.settings);
}
}
아, 맞아! 모든 것이 지금 일하는 것 같습니다. 감사! – krej