Привет, Я работаю над BaseAdapter, но всегда отображается мой последний элемент.Базовый адаптер не работает
public View getView(int position, View convertView, ViewGroup parent){
SearchViewHolder orderViewHolder = null;
int type = getItemViewType(position);
if (convertView == null) {
orderViewHolder = new SearchViewHolder();
convertView = inflater.inflate(R.layout.order_list_row, null);
orderViewHolder.setproductname((TextView) convertView
.findViewById(R.id.orderTitle));
}
convertView.setTag(orderViewHolder);
} else {
orderViewHolder = (SearchViewHolder)convertView.getTag();
}
for (int i = 0 ; i<msearchproductname.size();i++) {
System.out.println("@@ value of productname !!!!:"+msearchproductname.get(i));
orderViewHolder.getproductname().setText(""+msearchproductname.get(i));
}
return convertView;}
Даже выход
System.out.println("@@ value of productname !!!!:"+msearchproductname.get(i));
такой же, как мы хотим.
Что здесь происходит неправильно. В textView всегда отображается последний элемент. Пожалуйста, помогите мне. Спасибо заранее всем.
что делает эту линию печати Log.i («отладки», msearchproductname.size); ? –
msearchproductname.size - это список, значение которого 5 – DJhon
Вам нужно очистить вложенный код. Похоже, там есть что-то дополнительное. Это также трудно читать, когда вещи помечены случайным образом. –