最近做项目出现一个问题,ScrollView内部有一个GridView,GridView负责展示我从图片库选择的图片,奇怪的事情发生了,GridView有两张图片时,第2张图片显示position为0时的图片,查阅资料找到了解决方法。
1 先定义一个Map
private HashMap<Integer, View> viewMap;
修改GridView对应适配器的getView方法
if(!viewMap.containsKey(position) || viewMap.get(position) == null){
holder = new Holder();
convertView = LayoutInflater.from(mContext).inflate(R.layout.host_grid_item, null);
holder.imageview = (ImageView) convertView.findViewById(R.id.wallpaper_host_image);
convertView.setTag(holder);
viewMap.put(position, convertView);
}else{
convertView = viewMap.get(position);
holder = (Holder) convertView.getTag();
}
解决了我的问题,原文地址:http://blog.csdn.net/ccchp/article/details/38397511