Android, показывать диалог при нажатии элемента ListPreference - PullRequest
3 голосов
/ 31 мая 2011

По сути, у меня есть ListPreference, чтобы позволить пользователю изменять положение X некоторого текста на моих живых обоях.

Он содержит 4 записи: верхний, средний, нижний и ручной ввод X. Первые 3 варианта не представляют проблемы, я просто получаю SharedPreferences в своем классе WallpaperService и проверяю, являются ли они верхним, средним или нижним, и меняю положение, соответствующее на их выбор.

Однако последний вариант оказывается более сложным, и я хочу, чтобы всплывающее окно EditText всплыло, когда пользователь щелкает элемент ListPreference «Ручной ввод X», чтобы он мог ввести значение для X. Я просто не могу понять о том, как сделать всплывающее уведомление от нажатия на этот конкретный элемент списка.

Ответы [ 2 ]

3 голосов
/ 31 мая 2011

Вы, вероятно, хотите создать пользовательский ListPreference. В основном вы хотите расширить с ListPreference (см. Оригинал здесь ) и предоставить пользовательский protected void onPrepareDialogBuilder(Builder builder), в котором вы предоставляете дополнительный «пользовательский» элемент списка и щелчок для обработки выбора «. Пользовательская "запись.

Обратите внимание, что я продолжаю говорить "обычай", потому что было бы лучше сделать этот класс максимально повторным.

0 голосов
/ 31 мая 2011

Переопределите onPreferenceTreeClick() в вашем PreferenceActivity и сравните предпочтение, которое он дает с тем, для которого вы хотите что-то сделать.

...