RecyclerView内部createViewHolder方法会对onCreateViewHolder生成的holder的itemView的parent进行判断,非空则报错ViewHolder views must not be attached when created。 解决:
if (holder.itemView.getParent() != null) {
((ViewGroup) holder.itemView.getParent()).removeView(holder.itemView);
}