RecyclerView에서는 DividerItemDecorator 클래스를 사용해서 간단하게 구분선을 넣어줄 수 있다.
먼저, recyclerview_divider.xml을 만든다.
구분선에 margin을 넣고 싶어 item에 left,right항목을 추가하였다.
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:left="10dp"
android:right="10dp">
<shape android:shape="rectangle">
<size
android:width="400dp"
android:height="1dp"/>
<solid android:color="@color/gray"/>
</shape>
</item>
</layer-list>
해당 클래스에 적용시킨다.
// set divider
DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(getContext(), 1);
dividerItemDecoration.setDrawable(getResources().getDrawable(R.drawable.recyclerview_divider));
recyclerMusicFiles.addItemDecoration(dividerItemDecoration);
// set adapter
myAdapter = new MyAdapter();
recyclerMusicFiles.setAdapter(myAdapter);
이렇게하면 아주 간단하게 리사이클러뷰 안에 구분선을 추가할 수 있다!!
+참고로 DividerItemDecoration에서 'Rect'을 지원하기 때문에 xml에 shape을 'rectangle'이 아닌 'line'으로 구현하려고 하면 실행시켜도 보이지 않는다....ㅠ 그냥 막연하게 선으로 만들면 되겠지 했다가 삽질했었다... ㅠㅠ