Android移动开发之【Android实战项目】Recyclerview添加花色分割线

最近在做项目的过程中发现干巴巴的Recyclerview真的不好看,这里讲一下怎么一句话加默认的分割线,并且改变分割线的样式。

一.添加默认分割线

我们来实际操作一下,在原来的 MainActivity.java 中为 RecyclerView 添加默认分割线,如下:

mRecyclerView.addItemDecoration(newDividerItemDecoration(this,DividerItemDecoration.VERTICAL));

在其他的java类文件中添加如下:

recyclerView.addItemDecoration(new DividerItemDecoration(getActivity(), DividerItemDecoration.VERTICAL));

二.修改样式

下面我们再为分割线更换一种样式:
首先在drawable/路径下创建一个资源文件divider.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <gradient
        android:centerColor="#ff00ff00"
        android:endColor="#ff0000ff"
        android:startColor="#ffff0000"
        android:type="linear" />

    <size android:height="4dp"/>

</shape>

三.设置方法

通过 setDrawable() 方法:

//源代码:
mRecyclerView.addItemDecoration(new DividerItemDecoration(this,DividerItemDecoration.VERTICAL));

//改成如下:
DividerItemDecoration decoration = new DividerItemDecoration(this,DividerItemDecoration.VERTICAL);
     decoration.setDrawable(getResources().getDrawable(R.drawable.divider,null));
mRecyclerView.addItemDecoration(decoration);

或者 修改系统主题中的 android:listDivider 属性值:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
      <item name="android:listDivider">@drawable/divider</item>
      ...
  </style>

二者实现的效果是一样的,如下:

在这里插入图片描述

发布了662 篇原创文章 · 获赞 191 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/weixin_43838785/article/details/104481067