Настройки браузера Android позволяют нажимать на ListPreference, если кто-то хочет очистить кеш.Если пользователи нажимают на эту ListPreference, список не отображается - вместо этого появляется диалоговое окно.
Я хотел бы использовать аналогичную функцию для остановки работающей службы.
Я создал запись внастройки приложения без андроида: записи и андроид: теги entryValues:
<ListPreference
android:key="list_stop"
android:title="@string/txt_stopservice" />
Нет Я пытаюсь поймать щелчок:
listPreferenceServiceStop = (ListPreference) preferenceScreen.findPreference("list_stop");
listPreferenceServiceStop.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference preference) {
Tools.showToast(context, "BlaBla");
return true;
}
});
Если пользователь нажимает на эту запись, появляется следующая ошибка:
java.lang.IllegalStateException: ListPreference требуется массив записей и массив entryValues.
В настройках браузера Android также не отображаются значения.
Как они это делают?И это правильный способ поймать клик?
Большое спасибо заранее.HJW