Я использовал этот код более 6 месяцев, но прошло уже пару часов, чтобы он не вызывал getview, я не знаю почему. Я зарегистрировал размер адаптера и имеет 1 элемент, но getView не вызывает.android getView не звонит в базовом адаптере
Я также зарегистрировал размер адаптера в getCount() и имеет 1 элемент. это код:
public class ListAdapter extends BaseAdapter {
Activity activity;
public ArrayList<HashMap<String, String>> list;
public ListAdapter(Activity activity, ArrayList<HashMap<String, String>> list) {
super();
this.activity = (Activity) activity;
this.list = list;
}
public int getCount() {
return list.size();
}
public Object getItem(int position) {
return list.get(position);
}
public void addAll(ArrayList<HashMap<String, String>> result) {
if (this.list == null) {
this.list = result;
} else {
this.list.addAll(result);
}
notifyDataSetChanged();
}
public HashMap<String, String> geting(int position) {
return list.get(position);
}
public long getItemId(int arg0) {
return 0;
}
private class ViewHolder {
ImageView img;
}
public View getView(int position, View convertView, ViewGroup parent) {
Log.v("this","comes");
ViewHolder holder;
LayoutInflater inflater = activity.getLayoutInflater();
if (convertView == null) {
if(isTablet)
convertView = inflater.inflate(R.layout.ads_ekhtesasi_grid, null);
else
convertView = inflater.inflate(R.layout.ads_ekhtesasi, null);
holder = new ViewHolder();
holder.img = (ImageView) convertView.findViewById(R.id.img);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
item = list.get(position);
Log.v("this",item.get("img"));
return convertView;
}
public void clear() {
if (this.list.size() > 0)
this.list.clear();
}
}
, как вы можете видеть, я положил журнал на первой линии GetView, но не получить.
Не могли бы вы мне помочь? почему это ?
попробуйте вернуть 'arg0' в' getItemId() ' –
, вам нужно изменить свой журнал и поместить значение позиции Log.v (« this », item.get (position)); – br00
@Nilesh спасибо за ответ, но не работает –