我在自定义列表视图适配器中的 getView() 发生了一个异步调用,如下(最后一行):
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
holder=new Holder();
View rowView;
rowView = inflater.inflate(R.layout.list_posts_item, null);
holder.tvTitle=(TextView) rowView.findViewById(R.id.tvTitleNamePost);
holder.ivPrimaryImage=(ImageView) rowView.findViewById(R.id.ivPrimaryImage);
holder.ivPrimaryImage.setId(position);
holder.ivPrimaryImage.setTag(listOfPosts.get(position).getPostId());
holder.tvLocality=(TextView) rowView.findViewById(R.id.tvLocalityPosts);
holder.tvDateCreated=(TextView) rowView.findViewById(R.id.tvDateCreated);
holder.tvTitle.setText(listOfPosts.get(position).getTitle());
holder.ivPrimaryImage.setImageBitmap(listOfPosts.get(position).getImage());
holder.tvLocality.setText(listOfPosts.get(position).getLocality());
holder.tvDateCreated.setText(listOfPosts.get(position).getCreatedDate());
postId = listOfPosts.get(position).getPostId();
Image image = new Image();
image.setImg(holder.ivPrimaryImage);
if(!"N".equalsIgnoreCase(listOfPosts.get(position).getHasImage()))
new GetPrimaryImages().execute(image);
return rowView;
}
问题是,每次执行 getView 时都会发生异步调用。我们可以限制调用,仅当考虑的项目是 imageView 时?