안드로이드

[Android] RecyclerView의 Item 간격 띄우기 (ItemDecoration)

Been 2021. 5. 23. 20:30

RecyclerView의 Item 간격 띄우기 (ItemDecoration)

 

 

ItemDecoration 클래스 생성
inner class SpaceDecoration(private val size: Int) : RecyclerView.ItemDecoration() {
        override fun getItemOffsets(
            outRect: Rect,
            view: View,
            parent: RecyclerView,
            state: RecyclerView.State
        ) {
            super.getItemOffsets(outRect, view, parent, state)
            outRect.right += size
            if (parent.getChildAdapterPosition(view) == 0) {
                outRect.left += size
            }
        }
    }

 

Dimens 생성
<dimen name="my_space_size">8dp</dimen>

 

리싸이클러뷰에 ItemDecoration적용
val size = resources.getDimensionPixelSize(R.dimen.my_space_size)
val deco = SpaceDecoration(size)
rvProjectListPreviewWeb.addItemDecoration(deco)