listview滑动时数据错位解决办法

来源:互联网 发布:如何修改ssh端口 编辑:程序博客网 时间:2024/05/21 05:42

当滑动listview时,在滑动回去发现数据位置错位了.如何解决呢?


下面这段代码运行时是错位状态

    @Override    public View getView(int position, View convertView, ViewGroup viewGroup) {        ViewHolder holder;        if(convertView==null){            holder=new ViewHolder();            convertView=inflater.inflate(R.layout.lv_item,null);            holder.tv= (TextView) convertView.findViewById(R.id.lv_item_tv);            //错误部分            holder.tv.setText(list.get(position).get("title").toString());                       convertView.setTag(holder);        }else{            holder= (ViewHolder) convertView.getTag();        }        holder.tv.setText(list.get(position).get("title").toString());        return convertView;    }    class  ViewHolder{        TextView tv;    }



修改后错位正常:

   @Override    public View getView(int position, View convertView, ViewGroup viewGroup) {        ViewHolder holder;        if(convertView==null){            holder=new ViewHolder();            convertView=inflater.inflate(R.layout.lv_item,null);            holder.tv= (TextView) convertView.findViewById(R.id.lv_item_tv);                 convertView.setTag(holder);        }else{            holder= (ViewHolder) convertView.getTag();        }        //移出if()  重新运行正常        holder.tv.setText(list.get(position).get("title").toString());        return convertView;    }    class  ViewHolder{        TextView tv;    }


原创粉丝点击