傻傻的开心,呵呵 gridview布局 ,convertView加载,图片出现重叠现象 ,已解决!!(针对个人问题,仅可参考哟)
2016-05-13 11:10
387 查看
问题:本人需在主界面获取所有app,获取后没发现什么问题,但是导入多个app后问题出来了:点击某app,按下去,显示的却是另一个app的图标,而不是该app的图标。
对于菜鸟的我,心情瞬间不好了。于是博客别人各种方法,但是比较一下,没什么问题啊,把别人的方法一次又一次的借用了下还是不行,这下不开心了。
最后在理解的基础上,瞎猫碰上死耗子,终于解决了,分享给大家,也希望大家不要和我一样,遇到问题就乱撞,呵呵,一定静下心来滤清思路,脑袋疼、乱的时候稍微休息下,在重来!
贴码吧,
未解决前的码:
<span style="font-size:12px;">public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder mViewHolder = null;
if (convertView == null) {
// 使用View的对象itemView与R.layout.app关联
convertView = inflater.inflate(R.layout.bd_menu_app_list, parent,false);
mViewHolder = new ViewHolder();
mViewHolder.app_hkbuttom = (HKButtonText) convertView.findViewById(R.id.btn_app);
mViewHolder.app_names = (TextView) convertView.findViewById(R.id.app_names);
convertView.setTag(mViewHolder);
} else {
mViewHolder = (ViewHolder) convertView.getTag();
}
// AppInfo appInfo = (AppInfo)getItem(position);
// mViewHolder.app_hkbuttom.SetIconUp(((BitmapDrawable) appInfo.getAppIcon()).getBitmap());
// mViewHolder.app_names.setText(appInfo.getAppLabel().toString());
mViewHolder.app_hkbuttom.SetIconUp(((BitmapDrawable)mArrayList.get(position).getAppIcon()).getBitmap());
mViewHolder.app_names.setText(mArrayList.get(position).getAppLabel().toString());
// 获取的APP触碰监听
mViewHolder.app_hkbuttom.setId(position);
mViewHolder.app_hkbuttom.SetHKTouchListener(ApplicationActivity.this);
return convertView;
}
}</span>
解决后的码:
<span style="font-size:12px;"> if (convertView == null || convertView.getTag() !=null) {
// 使用View的对象itemView与R.layout.app关联
convertView = inflater.inflate(R.layout.bd_menu_app_list, parent,false);
mViewHolder = new ViewHolder();
mViewHolder.app_hkbuttom = (HKButtonText) convertView.findViewById(R.id.btn_app);
mViewHolder.app_names = (TextView) convertView.findViewById(R.id.app_names);
convertView.setTag(mViewHolder);
} else {
mViewHolder = (ViewHolder) convertView.getTag();
} </span>
呵呵,是不是感觉没哪里有变化呀。还是给大家指一下吧,就是在getView下的convertView判断中,少了一个判断条件:
convertView.getTag() !=null
再看一下,是不是呀,是不是呀,呵呵O(∩_∩)O~
就因为少了这句,害我弄了好长时间,不过现在终于好了,菜菜的我心情特别好,(*^__^*) 嘻嘻……
( ^_^ )/~~拜拜
对于菜鸟的我,心情瞬间不好了。于是博客别人各种方法,但是比较一下,没什么问题啊,把别人的方法一次又一次的借用了下还是不行,这下不开心了。
最后在理解的基础上,瞎猫碰上死耗子,终于解决了,分享给大家,也希望大家不要和我一样,遇到问题就乱撞,呵呵,一定静下心来滤清思路,脑袋疼、乱的时候稍微休息下,在重来!
贴码吧,
未解决前的码:
<span style="font-size:12px;">public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder mViewHolder = null;
if (convertView == null) {
// 使用View的对象itemView与R.layout.app关联
convertView = inflater.inflate(R.layout.bd_menu_app_list, parent,false);
mViewHolder = new ViewHolder();
mViewHolder.app_hkbuttom = (HKButtonText) convertView.findViewById(R.id.btn_app);
mViewHolder.app_names = (TextView) convertView.findViewById(R.id.app_names);
convertView.setTag(mViewHolder);
} else {
mViewHolder = (ViewHolder) convertView.getTag();
}
// AppInfo appInfo = (AppInfo)getItem(position);
// mViewHolder.app_hkbuttom.SetIconUp(((BitmapDrawable) appInfo.getAppIcon()).getBitmap());
// mViewHolder.app_names.setText(appInfo.getAppLabel().toString());
mViewHolder.app_hkbuttom.SetIconUp(((BitmapDrawable)mArrayList.get(position).getAppIcon()).getBitmap());
mViewHolder.app_names.setText(mArrayList.get(position).getAppLabel().toString());
// 获取的APP触碰监听
mViewHolder.app_hkbuttom.setId(position);
mViewHolder.app_hkbuttom.SetHKTouchListener(ApplicationActivity.this);
return convertView;
}
}</span>
解决后的码:
<span style="font-size:12px;"> if (convertView == null || convertView.getTag() !=null) {
// 使用View的对象itemView与R.layout.app关联
convertView = inflater.inflate(R.layout.bd_menu_app_list, parent,false);
mViewHolder = new ViewHolder();
mViewHolder.app_hkbuttom = (HKButtonText) convertView.findViewById(R.id.btn_app);
mViewHolder.app_names = (TextView) convertView.findViewById(R.id.app_names);
convertView.setTag(mViewHolder);
} else {
mViewHolder = (ViewHolder) convertView.getTag();
} </span>
呵呵,是不是感觉没哪里有变化呀。还是给大家指一下吧,就是在getView下的convertView判断中,少了一个判断条件:
convertView.getTag() !=null
再看一下,是不是呀,是不是呀,呵呵O(∩_∩)O~
就因为少了这句,害我弄了好长时间,不过现在终于好了,菜菜的我心情特别好,(*^__^*) 嘻嘻……
( ^_^ )/~~拜拜
相关文章推荐
- AppCan+滴滴:为APP一键接入O2O出行服务
- JS判断图片是否加载完成方法汇总(最新版)
- premature filter
- (深夜课堂)Javascript 面向对象的程序设计
- HTTP的长连接和短连接
- PHP用户名用星号处理
- js中的for-of循环遍历数组
- mysql5.711 performance_schema.session_status' doesn't exist
- ArcGIS教程:最小值和最大值条形图
- 12个JavaScript技巧
- PHP中PDO连接数据库中各种DNS设置方法小结
- IIC 读写时候提示 timeout waiting for bus ready
- PHP问题 —— It is not safe to rely on the system's
- PHP问题 —— It is not safe to rely on the system's
- 安卓开发入门之activity
- 调用织梦标签遇到的问题(新手专用)www.vpincha.cc
- Lucene
- 上海驾校科目二考试的几个至关重要技巧
- 静态链接库如何在Linux上运行
- javaScript格式化文件大小