Recyclerview隐藏单个item代码(经测试有效)!

来源:互联网 发布:多态zpn for mac 编辑:程序博客网 时间:2024/06/05 22:49

方法一,经测试有效:
@Overridepublic void onBindViewHolder(final DownlaodViewHolder holder, final int position) {

if(isVisible){
                holder.setVisibility(true);
    }else{
                holder.setVisibility(false);
}

}


public class DownlaodViewHolder extends RecyclerView.ViewHolder{    private TextView project_package_name,main_text_title,progress_tex;    private Button file_load;    private ProgressBar progress_bar;    public DownlaodViewHolder(View itemView) {        super(itemView);        main_text_title= (TextView) itemView.findViewById(R.id.main_text_title);        project_package_name= (TextView) itemView.findViewById(R.id.project_package_name);        progress_tex=(TextView) itemView.findViewById(R.id.progress_tex);        file_load= (Button) itemView.findViewById(R.id.file_load);        progress_bar= (ProgressBar) itemView.findViewById(R.id.progress_bar);    }    public void setVisibility(boolean isVisible){        RecyclerView.LayoutParams param = (RecyclerView.LayoutParams)itemView.getLayoutParams();        if (isVisible){            param.height = LinearLayout.LayoutParams.WRAP_CONTENT;            param.width = LinearLayout.LayoutParams.MATCH_PARENT;            itemView.setVisibility(View.VISIBLE);        }else{            itemView.setVisibility(View.GONE);            param.height = 0;            param.width = 0;        }        itemView.setLayoutParams(param);    }

}

方法二,未经测试:

2 0
原创粉丝点击