2016-09-23 4 views
0

Я хочу спросить, возможно ли его установить для каждого значения/записи в моем списке, что я могу выбрать их только один раз, я имею в виду: у меня больше ListPreference, которые используют те же значения/записи, если я выберу первые значения/записи в первом listPreference, я хочу отключить первые значения/записи для другого ListPreference. Спасибо.ListPreference В SharedPreference

ответ

0

Первая проблема заключается в том, что вы хотите отключить некоторые элементы в ListPreferences, это не поддерживается там из коробки. Я бы порекомендовал использовать this approach, чтобы создать пользовательский ListPreference, поддерживающий отключенные элементы.

Второй вопрос заключается в том, что вы хотите поделиться информацией о выбранных элементах между несколькими ListPreferences, для этого вам необходимо изменить CustomListPreferenceAdapter код там, чтобы использовать один и тот же набор данных, включая информацию об элементах, выбранных во всех ListPreferences. Таким образом, вам, вероятно, нужно будет использовать , где элемент хранит информацию о его выборе (хотя шаблон Adapter предназначен для абстрактного выбора, сделанного на стороне ListView, но в вашем случае вы хотите, чтобы информация о выборе была частью данных, да) , И когда какой-либо ListPreference (или ListView тоже в общем случае) делает выбор, вам необходимо уведомить адаптеры других ListPreferences, чтобы перечитать данные выбора и отключить соответствующие элементы.

Я немного ленив, чтобы написать весь код для вас)) Используйте его как подсказку.

+0

Я не хочу, чтобы информация о выборе была частью моих данных, просто значения, я стараюсь делать то, что вы сказали. Спасибо. –

Смежные вопросы