Android: ListPreference скрыть / отключить значение

Я генерирую диалоговое окно listPreference на основе xml (записей и entryValues).

<string-array name="listArray">
    <item>Title (A-Z)</item>
    <item>Title (Z-A)</item>
    <item>Visits (default)</item>
    <item>Date</item>
    <item>Manual</item>
</string-array> 
<string-array name="listValues">
   <item>titleASC</item>
   <item>titleDESC</item>
   <item>visitsSort</item>
   <item>createSort</item>
   <item>manualSort</item>
</string-array>

Я хочу скрыть / отключить некоторые записи (например: Руководство) на основе некоторых других параметров.

Я понимаю, что это должно быть внутри этой области:

Preference sorted = (Preference) findPreference(OPT_SORT);

        sorted.setOnPreferenceClickListener(new OnPreferenceClickListener() {
            public boolean onPreferenceClick(Preference preference) {

                if (params) {
                    What should i put here to hide/disable some of the entries?
                }

                return true;
            }
        });

Спасибо!

РЕДАКТИРОВАТЬ :

Лучшее решение, которое я нашел, - это загрузить другой набор Entries и EntryValues. В классе предпочтений (onCreate):

ListPreference sortBy = (ListPreference) findPreference(OPT_SORT);
        if (isTabletDevice()) {
            sortBy.setEntries(getResources().getStringArray(R.array.HClistArray));
            sortBy.setEntryValues(getResources().getStringArray(R.array.HClistValues));
        }

Надеюсь, это поможет кому угодно! :)

6
задан Lior Iluz 5 August 2011 в 12:31
поделиться