У меня есть приложение Android с настройками, объявленными в XML, загруженные с помощью addPreferencesFromResource
. Пользователь может открыть настройки, щелкнуть по каждому элементу и отредактировать их, все работает.
Одно из моих предпочтений:
<ListPreference android:key="abc"
android:title="@string/abc"
android:summary="@string/cde"
android:persistent="true"/>
Как я могу автоматически показать диалог настроек пользователю (без необходимости перехода пользователя на экран настроек и нажмите на него?).
Я пробовал ( (android.preference.DialogPreference) prefMgr.findPreference( "abc" )).showDialog(null)
, но говорит, что это защищенный метод...? Вызывается из моего основного действия (это PreferenceActivity
), поэтому он явно не может работать. Но как еще?
ИЗМЕНИТЬ
Я только что нашел два потока (1 и 2) с идеей использовать findViewById
для доступа к предпочтениям, но без успеха. Он всегда возвращает null (для меня тоже).
Похоже, что нет никакой возможности сделать это из кода.