Чи є спосіб виконати дію, пов’язану з налаштуваннями у PreferenceActivity? Я використовую це:
CheckBoxPreference thing = (CheckBoxPreference) findPreference("thing");
thing.setChecked(true);
Перший рядок працює нормально, але другийприводить до NullPointerException. Ці рядки знаходяться всередині методу onCreate () у моєму коді. В ідеалі я хочу використовувати сигнал onClicked (), щоб я міг запускати певні методи при зміні налаштувань. Хтось знає, що я роблю неправильно?
Відповіді:
0 для відповіді № 1Я думаю, ви повинні використовувати onSharedPreferenceChangedListener, який ви можете встановити на екрані PreferenceScreen
http://developer.android.com/reference/android/preference/PreferenceScreen.html
0 для відповіді № 2
річ НУЛЬНА -> можливо, тоді переваги з "річчю" відсутності не існує
Я рекомендую вам прочитати це питання
0 для відповіді № 3
public Preference findPreference (CharSequence key)
, так що це за аргумент ⇒ спробуйте findPreference("thing")
Оновлення: Цей запис у блозі може бути корисним для вас.