Доступный для поиска ListPreference Android - PullRequest
0 голосов
/ 27 августа 2018

У меня есть экран настроек в моем приложении, где пользователь должен выбрать значение из списка:

<PreferenceCategory
        android:title="@string/entry_preferences">

    <ListPreference
        android:key="list_preference_access"
        android:title="@string/title_list_preference_access"
        android:summary="@string/summary_list_preference_access"
        android:dialogTitle="@string/title_list_preference_access" />

</PreferenceCategory>

А затем в PreferenceFragment:

 @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // Load the preferences from an XML resource
        addPreferencesFromResource(R.xml.preferences);

        ListPreference listPreferenceAccess = (ListPreference) findPreference("list_preference_access");

        //Populates with a List
        if (listPreferenceAccess != null) {

            ArrayList<EventAccess> eaList = Statics.getEventAccessList();

            CharSequence entries[] = new String[eaList.size()];
            CharSequence entryValues[] = new String[eaList.size()];

            int i = 0;
            for (EventAccess ea : eaList) {
                entries[i] = ea.getName();
                entryValues[i] = Long.toString(ea.getId());
                i++;
            }
            listPreferenceAccess.setEntries(entries);
            listPreferenceAccess.setEntryValues(entryValues);
        }
    }

Работает как талисман, однако ArrayList "EventAccess" имеет значения +/- 150 и получает хитрость при поиске элемента. Я бы хотел, чтобы DialogPreference из ListPreference был доступен для поиска. Возможно ли это?

...