Prawdopodobnie @Alon miał na myśli podklasy ArrayAdapter
, zamiast AutoCompleteTextView
. W metodzie getFilter()
należy zwrócić niestandardowy filtr, który nie wykonuje żadnego filtrowania (w jego performFiltering()
). Prawdopodobnie występ może być problemem - ponieważ tam się pojawia. Najlepiej byłoby wyprowadzić z TextEdit i zaimplementować własne okienko uzupełniania. Ale na razie to dla mnie zbyt wiele kłopotów. W końcu zrobiłem coś takiego i działa to dla mnie. Wszelkie opinie są mile widziane.
public class KArrayAdapter<T>
extends ArrayAdapter<T>
{
private Filter filter = new KNoFilter();
public List<T> items;
@Override
public Filter getFilter() {
return filter;
}
public KArrayAdapter(Context context, int textViewResourceId,
List<T> objects) {
super(context, textViewResourceId, objects);
Log.v("Krzys", "Adapter created " + filter);
items = objects;
}
private class KNoFilter extends Filter {
@Override
protected FilterResults performFiltering(CharSequence arg0) {
FilterResults result = new FilterResults();
result.values = items;
result.count = items.size();
return result;
}
@Override
protected void publishResults(CharSequence arg0, FilterResults arg1) {
notifyDataSetChanged();
}
}
}
Mam nadzieję, że to pomaga.
Cześć dzięki Alon i hav same prob. Byłbym wdzięczny, gdybyś mógł opublikować powiązany kod. Z góry dziękuję –
proszę dodaj kod lub opisz swoje rozwiązanie. Całkowicie utknąłem na tym. –
@Rajivyadav Wkrótce –