RecyclerView添加下划线

  • Post author:
  • Post category:其他


RecyclerView添加下划线

最近写一个项目,要给RecyclerView添加下滑线,由于本人比较菜,所以去度娘上搜了一波,发现大神们的代码量真的好长(主要是我太懒),然后就想能不能在xml文件里做一些手脚,结果发现还真行。

第一步:在recyclerview的布局文件里加一个view:


<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:paddingTop="15dp"
        android:paddingBottom="15dp"
        android:paddingLeft="18dp">

        <TextView
            android:id="@+id/notes_content_part"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="16sp"
            android:textColor="#000"/>

        <TextView
            android:id="@+id/notes_time"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="4dp"
            android:textSize="14sp"/>

    </LinearLayout>

    <View
        android:id="@+id/updownline"
        android:layout_width="match_parent"
        android:layout_height="0.5dp"
        android:background="#dfdfdf"
        android:layout_marginLeft="18dp"/>

这个view加在顶部或者底部都可以:

第二步,在适配器中去掉最底下的view:

static class ViewHolder extends RecyclerView.ViewHolder {

        TextView notes_content_part;
        TextView notes_time;
        View updownline;

        public ViewHolder(View itemView) {
            super(itemView);
            notes_content_part = itemView.findViewById(R.id.notes_content_part);
            notes_time = itemView.findViewById(R.id.notes_time);
            updownline = itemView.findViewById(R.id.updownline);//获取view布局
        }
    }
@Override
    public void onBindViewHolder(NotesAdapter.ViewHolder holder, int position) {
        Notes notes = list.get(position);
        holder.notes_content_part.setText(notes.getNotes_content_part());
        holder.notes_time.setText(notes.getNotes_time());
        //当当前的item为最后一个时隐藏view
        if(position == list.size()-1) {
            holder.updownline.setVisibility(View.GONE);
        }
    }

Ok这样你就可以实现简单的recyclerview分割线了(虽然比较lower)。



版权声明:本文为WTLIFE原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。