Android listview中再嵌套listview 实现消息评论功能处理

来源:互联网 发布:带着淘宝混异世txt 编辑:程序博客网 时间:2024/06/07 15:15

在listview的每个ITEM中需要嵌套一个listview显示评论信息时会遇到滚动listview时评论信息会乱显示问题

解决办法如下:

1、在第一个listview的getview()方法中需要将空间全部绑定

ClassUserListViewHolder holder = null;
   if(convertView==null){
    convertView = View.inflate(context, R.layout.dynamic_list_item, null);
    holder=new ClassUserListViewHolder(); 
    holder.ivDyHeadPhoto = (ImageView) convertView.findViewById(R.id.iv_dynamic_headPhoto);
    holder.tvDyUserName = (TextView) convertView.findViewById(R.id.tv_dynamic_username);
    holder.tvDyContent = (TextView) convertView.findViewById(R.id.tv_dynamic_content);
    holder.tvDyTime = (TextView) convertView.findViewById(R.id.tv_dynamic_time);
    holder.ll_comment = (LinearLayout)convertView.findViewById(R.id.ll_dynamic_comment);
    holder.lv_comment = (ListView)convertView.findViewById(R.id.lv_dynamic_comment_list);
    convertView.setTag(holder);
   }else{
    holder = (ClassUserListViewHolder)convertView.getTag(); 
   }

 

public class ClassUserListViewHolder{ 
        public ImageView ivDyHeadPhoto; 
        public TextView tvDyUserName; 
        public TextView tvDyContent; 
        public TextView tvDyTime; 
        public LinearLayout ll_comment; 
        public ListView lv_comment;
       
    } 

 

if(info.getCommentList().size()>0){
    if(holder.ll_comment.getVisibility()==View.GONE){
     holder.ll_comment.setVisibility(View.VISIBLE);
     CommentAdapter mAdapter = new CommentAdapter(mActivity, info.getCommentList(), info.getId(), position);
     holder.lv_comment.setAdapter(mAdapter);
    }
   }else{
    holder.ll_comment.setVisibility(View.GONE);
   }

 

2、在第二个listview的getview方法中每次都应重绘view  则不能绑定控件

 

if (convertView == null) {
    convertView = View.inflate(context,R.layout.dynamic_comment_item, null);
   }
   tvUsername = (TextView)convertView.findViewById(R.id.tv_dynamic_comment_username);
   tvReUsername = (TextView)convertView.findViewById(R.id.tv_dynamic_comment_reusername);
   tv_content = (TextView)convertView.findViewById(R.id.tv_dynamic_comment_content);

 

 

 

 

0 0
原创粉丝点击