좋아요. 알아 냈습니다. "key_summary"라는 모든 기본 설정 키에 리소스 문자열을 추가하고 기본 설정을 정의하는 xml 파일에서 android : summary로 사용하면됩니다. 다음과 같이 그런 다음 onSharedPreferenceChanged 기능에 바로 요약으로 해당 문자열을로드 :
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key)
{
Preference preference = findPreference(key);
if(preference instanceof EditTextPreference)
{
EditTextPreference editPref = (EditTextPreference)preference;
String szPref = editPref.getText();
if(null!=szPref&&0<szPref.length())
editPref.setSummary(szPref);
else
{
Activity activity = getActivity();
int nSummary = getResources().getIdentifier(key + "_summary", "string", activity.getPackageName());
if(0<nSummary)
editPref.setSummary(getString(nSummary));
else
editPref.setSummary(szPref);
}
}
}
당신은 strings.xml의 문자열 자원으로 기본 summray을 설정해야하고 당신은 다시 설정할 수 매번 당신은 할 수 있습니다. – Opiatefuchs
네,하지만 제 수업은 모든 EditTextPreference에 사용되는 제네릭 클래스이고, 저는 그것들이 많이 있습니다. 이 클래스에 특정 항목을 추가하여 각 항목에 해당하는 문자열을 가져올 수는 없습니다. 이 일을하는 일반적인 방법을 원합니다 ... setSummary (getDefaultSummary())와 같은 것 ... :) – user3747760