在项目中使用了谷歌Glide图片加载框架,在Listview中我的是一个类似新闻资讯一样的列表,遇到了几个我问题再次记录一下!
一 在Fragment中使用Listview的addHeaderView()的方法添加新闻的Banner轮换页时,在对listview设置OnItemClickListener事件的时候,我们需要loadMoreListView.getHeaderViewsCount()方法判断一下是否有headerview ,因为如果有headview的话item的position会减1, adapter.updata(loadMoreListView.getHeaderViewsCount()>0?position-1:position);
intent=new Intent(getActivity(), WebReaderActivity.class);
Bundle bundle=new Bundle(); bundle.putInt("id",adapter.getItem(loadMoreListView.getHeaderViewsCount()>0?position-1:position).getId()); List<String> ImgPaths = new Gson().fromJson(adapter.getItem(loadMoreListView.getHeaderViewsCount()>0?position-1:position).getAppDisplayImages(), new TypeToken<List<String>>() {
}.getType());
bundle.putString("ImageUrl",ImgPaths.get(0));
intent.putExtras(bundle);
startActivity(intent);
二:使用Glide给listview中的Imageview 设置setTag的偶尔会报错
"You must not call setTag() on a view Glide is targeting"
通过网上查询资料得到的解决办法是使用setTagsetTag(int key,Object object)两参方法 ViewHolder.first_iv.setTag(int key,Object object);即可解决问题