gridview在上下拖动时产生的位置错乱与消失的问题……

u010392970 2014-09-19 12:40:03
自建了一个GRIDVIEW,不放图片,就放字符串,为了让一个长串的字符串显示得整齐才用的GRIDVIEW。

然后刚开始用simpleadapter,结果程序刚进去可以正常显示,但是一旦往下拖这个列表,再拖上来,有时(注意是有时)整个表的上面一部分就会消失一部分数据然后其他数据网上补位造成数据显示错乱。并且,如果这时候继续把列表往上拉(就是手指往下刷),整个表就会完全消失,再也无法通过手指的滑动让丫回复,只能返回再重新进来。

上网查了一下类似的现象,有说重写getview的,我就自写了一个
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder hd = null;
if (convertView == null) {
hd = new ViewHolder();
convertView = layoutInflater.inflate(R.layout.night_item, null);
hd.mCountTv = (TextView) convertView
.findViewById(R.id.ItemText);
} else {
hd = (ViewHolder) convertView.getTag();
}
TextView tv1 = (TextView)convertView.findViewById(R.id.ItemText);
tv1.setText(list.get(position).get("ItemText").toString());
return convertView;
}
class ViewHolder {
TextView mCountTv;
}
结果显示得跟原来一样,问题也一样。毫无用处!
然后有说把那个 if (convertView == null) {注释掉的,试了一下同样毫无用处。
以下是主程序代码:
gridview.setNumColumns(lie);//设置列数
//生成动态数组,并且转入数据
ArrayList<HashMap<String, Object>> lstImageItem = new ArrayList<HashMap<String, Object>>();
for(int i=0;i<qq.length;i++)
{
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("ItemText", qq[i]);//按序号做ItemText
lstImageItem.add(map);
}
gridview.setAdapter(new MyAdapter(ResourceList.this, lstImageItem));

希望大家告诉我这个问题如何解决。虽然感觉用其他显示方法也能显示,但是我想死磕GRIDVIEW这样一辈子都忘不了啦。
...全文
327 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
执着砖手 2016-03-28
  • 打赏
  • 举报
回复
我也遇到了这个问题,请问解决了没有
2015-09-18
  • 打赏
  • 举报
回复
楼主解决了吗?我恰好页碰到了这个问题

80,492

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧