在列表中控制 AsyncTask 加载 bitmap 的时机

来源:互联网 发布:mp3合并软件 编辑:程序博客网 时间:2024/06/07 02:31
//滑动控制private OnScrollListener mScrollListener=new OnScrollListener(){@Overridepublic void onScrollStateChanged(AbsListView view,int scrollState){if(scrollState==OnScrollListener.SCROLL_STATE_FLING){Log.d(TAG,"luzechun scroll fling");isLoadThumbNail=false;}else if(scrollState==OnScrollListener.SCROLL_STATE_IDLE||scrollState==OnScrollListener.SCROLL_STATE_TOUCH_SCROLL){Log.d(TAG,"luzechun scroll not fling");if(!isLoadThumbNail){isLoadThumbNail=true;mStaticScreemAdapter.notifyDataSetChanged();}}}@Overridepublic void onScroll(AbsListView arg0,int arg1,int arg2,int arg3){}};private class LocalStaticScreenAdapter extends AbstractScreenAdapter{public LocalStaticScreemAdapter(Context context,List<String>items){super(context, items);}@SuppressLint("NewApi")@Overridepublic View getView(int position, View convertView, ViewGroup parent) {    ViewHolder holder = null;    if (convertView == null) {        convertView =inflateLayout(R.layout.static_screem_thumbnail_layout, null);        holder = new ViewHolder();        holder.mImageView =(ImageView)convertView.findViewById(R.id.ItemImage);        convertView.setTag(holder);    } else {        holder = (ViewHolder)convertView.getTag();    }    String path=(String)getItem(position);    //isLoadThumbNail标识是否可以加载 bitmap    mDynWallpaperLoader.load(path, holder.mImageView, !isLoadThumbNail);        return convertView;}}public static class ViewHolder {        public ImageView mImageView;    }