我有一個異步調用在自定義列表視圖adaper從getView()發生,如下(最後行):如何限制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時,我們才能限制通話嗎?
你的意思是當你「按」一個ImageView? –
@MicheleLacorte號 由於我的適配器有6行,我希望以下內容只能執行6次。 new GetPrimaryImages()。execute(image); 但它正在執行6 *一行中的小部件數量。 我想限制這一點。 – pagalpanda
iteration on listOfPosts.size();並設置計數器有靜態,我知道這不是最好的方法,但它應該工作 –