2017-09-23 10 views
0

Android 가이드 라인은 다양한 카테고리/설정 그룹에 대해 조각을 사용하여 휴대 전화와 태블릿 모두에 대한 설정을 디자인합니다. 방법 setDefaultValues(context,resId,readAgain)가 예상되는 어떻게 조각 설정 구조를 사용하는 경우 setDefaultValues ​​

pref_general.xml 
pref_notifications.xml 

첫 번째 공유 환경 설정 파일을 만드는 데 사용되는 : 안드로이드 스튜디오에 의해 만들어진
SettingsActivity는 설정 조각 하나 하나에 대해 하나 개의 XML 파일을 만듭니다? 설정 만이 그 조각에 정의와 MainACtivity

PreferenceManager.setDefaultValues(this, R.xml.pref_general, false); 
PreferenceManager.setDefaultValues(this, R.xml.pref_notifications, false); 

당신은 당신의 코드에 넣으면는 첫 번째 라인은 공유 환경 설정 파일을 만듭니다.
번째 행이 실행되지 합니다 (readAgain 파라미터가 거짓이고, 상기 방법은 첫 번째 행에서 이미 실행되어 있기 때문에) truereadAgainsetDefaultValues마다 실행할 설정 한편

.

답변

0

android:defaultValue을 XML 파일에 사용할 수 있습니다.

android:defaultValue

: 설정됩니다 환경 설정의 기본 값 중 지속성이 꺼져 있거나 지속성이 켜져 있고 선호 가 영구 저장소에서 발견되지 않는 경우.

<SwitchPreferenceCompat 
    android:key="key1" 
    android:title="Switch Preference" 
    android:summary="Switch Summary" 
    android:defaultValue="true" /> 

또는, 프로그램이이 방법으로 수행 할 수 있습니다

//this returns whatever preference was set for key1 in PreferencesPage 
or the default value if nothing was set 

sharedPreferences.getBoolean("key1", true)); 
+0

', SetDefaultValues을 sharepreferences 파일을 작성하지 않는 첫 번째 제안()'않습니다. 두 번째 제안은 많은 설정이있는 경우 실용적이지 않으며 새 설정을 추가 할 때마다 코드를 추가해야합니다. 마지막으로 질문은 ** 환경 설정을 초기화하는 방법이 아닌 **하지만 설정 조각에 대한 새로운 권장 사항에 따라'SetDefaultValues ​​()'를 사용하는 방법이 아니 었습니다. – ilomambo