
구현을 하다보면 위 사진처럼 RecyclerView의 첫 번째 아이템에만 간격을 주고싶을 때가 있다. 하지만 이럴 때 RecyclerView의 왼쪽에 Margin을 주는 방식으로 구현한다면 스크롤이 잘리게 돼서 모양이 안 예쁘다.
<androidx.recyclerview.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:orientation="horizontal"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
tools:listitem="@layout/item_profile"/>

우리가 원하는 건 이런 느낌이 아니다.
이런 저런 방법을 찾아봤는데 생각보다 간단히 구현이 가능했다. clipToPadding 속성을 false로 주고 padding을 주면 원하는 대로 구현이 된다.
padding만 줄 경우 margin을 줬을 때처럼 스크롤이 잘리게 되는데, clipToPadding을 false로 설정한다면 padding을 주되 스크롤이 잘리지 않는다.
<androidx.recyclerview.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="20dp"
android:clipToPadding="false"
android:orientation="horizontal"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
tools:listitem="@layout/item_profile"/>

RecyclerView 자체는 padding의 영향을 받지 않고 스크롤이 원하는 대로 구현되는 것을 확인할 수 있다.
'Programming > Android_Kotlin' 카테고리의 다른 글
Android Custom View 만들기 (1) | 2021.11.13 |
---|---|
Array의 toList()와 asList() (0) | 2021.10.17 |
RecyclerView Adapter 연동하기 (0) | 2021.10.16 |
Room DB 사용하기 (0) | 2020.09.30 |
Spinner에 데이터 연동하기 (0) | 2020.09.28 |