项目需求,需要做一个数据列表,使用 RecyclerView 来实现数据的展示。
列表包含标题和数据。
标题有固定的数据,所以表头的行高可以固定下来,于是就需要在代码中动态的修改第一行的行高。查了好久,竟然没有找到解决办法,最后还是自己解决了这个问题,记录以备查询。
解决办法:只需要在 onBindViewHolder 中判断当前位置,然后获取到 LayoutParams 实例,修改 height 高度即可。
@Override public void onBindViewHolder(@NonNull VH holder, int position) { if (position == 0) { // 调整标题行高度 ViewGroup.LayoutParams layoutParams = holder.itemView.getLayoutParams(); layoutParams.height = 30; } holder.item.setText(data.get(position).itemTitle); holder.recommendValueValue.setText(data.get(position).recommendValue); holder.remark.setText(data.get(position).remark); }