Czy istnieje prosty sposób ustawienia listy rozwijanej 2 TextView w widoku AutoCompleteTextView.Jak dodać niestandardową kartę do AutoCompleteTextView?
Istnieje android.R.layout.two_line_list_item
Które nie mogłem znaleźć przykłady użycia.
Tak, próbowałem to:
public class TwoLineDropdownAdapter extends BaseAdapter {
private LayoutInflater mInflater = null;
private Activity activity;
public ArrayList<TwoLineDropDown> values = new ArrayList<TwoLineDropDown>();
public TwoLineDropdownAdapter(Activity a, ArrayList<TwoLineDropDown> items) {
values = items;
activity = a;
mInflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
public int getCount() {
return values.size();
}
public TwoLineDropDown getItem(int position) {
return values.get(position);
}
public long getItemId(int position) {
return position;
}
public static class ViewHolder {
public TextView title;
public TextView description;
}
public View getView(final int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
convertView = mInflater.inflate(R.layout.dropdown_text_twoline,
parent, false);
holder.title = (TextView) convertView
.findViewById(R.id.text1);
holder.description = (TextView) convertView
.findViewById(R.id.text2);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
return convertView;
}
public void add(TwoLineDropDown ei) {
values.add(ei);
}
}
Ale w obliczu problemu tutaj:
TwoLineDropdownAdapter AutoCompleteAdapter = new TwoLineDropdownAdapter(this, items);
myAutoComplete.setAdapter(AutoCompleteAdapter);
podczas ustawiania adaptera to mówi:
Związany źle match: Ogólna metoda setAdapter (T) typu AutoCompleteTextView nie ma zastosowania dla argumentów (TwoLineDropdownAdapter). Typ wnioskowany TwoLineDropdownAdapter to nie jest prawidłowym zamiennikiem ograniczonego parametru
Jak rozwiązać ten problem?
Dziękuję
Zastosowałem tę metodę, ale nie pojawia się autouzupełnianie. – tony9099
można zastąpić "rozszerza ListAdapter & Filterable" do BaseAdapter ?, mówię: adapter do adaptera? – delive
@dodaj, możesz zastąpić 'ListAdapter' dowolnie wybraną podklasą. – njzk2