Android (안드로이드)/RecyclerView
Android in A..Z - RecyclerView (Layout Manager)
강태종
2021. 1. 10. 04:25
Layout Manager
RecyclerView에 Layout을 관리하는 클래스이다.
종류
- LinearLayoutManager : 수평, 수직으로 ViewHolder를 표현한다.
- GridLayoutManager : 격자판 형식으로 ViewHolder를 표현한다.
- StaggeredGridLayoutManager : 높이가 불규칙한 격자판 형식으로 ViewHolder를 표현한다.
- FlexBoxLayoutManager : 반응형으로 ViewHolder를 표현한다.
LinearLayoutManager
Programming
recyclerview.layoutManager = LinearLayoutManager(context) // 수직
recyclerview.layoutManager = LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false) // 수평
XML
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="0dp"
android:layout_height="0dp"
android:orientation="vertical"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" />
GridLayoutManager
Programming
recyclerview.layoutManager = GridLayoutManager(context, spanCount)
XML
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="0dp"
android:layout_height="0dp"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:spanCount="3" />
StaggeredGridLayoutManager
FlexBoxLayoutManager
구글에서 만든 반응형 LayoutManager이다.
Git (예제코드)
github.com/KangTaeJong98/Example/tree/main/Android/RecyclerView
이미지 참고
StaggeredGridLayoutManager
FlexBoxLayoutManager