티스토리 뷰
RecyclerView (8) - RecyclerView 에 ItemDecoration 으로 구분선 및 여백 설정
parkho79 2021. 3. 31. 09:24ListView 의 경우 아이템들을 구분하기 위한 구분선 (divider) 을 넣는 기능이 자체적으로 존재했다.
하지만, RecyclerView 는 해당 기능이 자체적으로 존재하지 않아 ItemDecoration 을 사용해야 한다.
이번 포스팅에서는 ItemDecoration 에 대해 알아보자.
![]() |
![]() |
[구분선 없음] | [구분선 추가] |
참고로, 지난 포스팅에서는 RecyclerView 에 image + text 출력, click 처리, menu 출력, Item 삽입, 수정, 삭제, header, footer 다는 방법에 대해 알아 보았다.
[Android/UI] - RecyclerView (7) - RecyclerView 에 header, footer 달기
[Android/UI] - RecyclerView (6) - RecyclerView item 추가, 수정, 삭제
[Android/UI] - RecyclerView (5) - RecyclerView item long click 시 popup menu 출력하기
[Android/UI] - RecyclerView (4) - RecyclerView item click 시 context menu 출력하기
[Android/UI] - RecyclerView (3) - RecyclerView item 의 click 처리하기
[Android/UI] - RecyclerView (2) - RecyclerView 에 image + text 출력하기
ItemDecoration
RecyclerView 내부에 있는 abstract class 로 item 간 구분선이나 여백을 설정할 수 있다.
RecyclerView.ItemDecoration | Android 개발자 | Android Developers
RecyclerView.ItemDecoration public static abstract class RecyclerView.ItemDecoration extends Object java.lang.Object ↳ androidx.recyclerview.widget.RecyclerView.ItemDecoration An ItemDecoration allows the application to add a special drawing and la
developer.android.com
◼ getItemOffsets
각 항목을 배치할 때 호출.
public void getItemOffsets(Rect outRect, View view, RecyclerView parent, State state)
|
cs |
◼ onDraw
항목을 배치하기 전에 호출
public void onDraw(Canvas c, RecyclerView parent, State state)
|
cs |
◼ onDrawOver
모든 항목이 배치된 후에 호출됩니다.
public void onDrawOver(Canvas c, RecyclerView parent, State state)
|
cs |
구분선 추가
◼ 기본 구분선 추가
◼ 커스텀 구분선 추가
ItemDecoration 을 상속 받아 원하는 형태의 구분선을 추가할 수 있다.
여백 설정
하단과 같이 ItemDecoration 을 상속 받아 여백을 설정할 수 있다.
Source code
https://github.com/parkho79/RecyclerView_8
'Android > UI' 카테고리의 다른 글
RecyclerView (10) - RecyclerView ItemAnimator (2) | 2021.05.12 |
---|---|
RecyclerView (9) - RecyclerView clipToPadding (0) | 2021.05.03 |
RecyclerView (7) - RecyclerView 에 header, footer 달기 (0) | 2021.02.17 |
RecyclerView (6) - RecyclerView item 추가, 수정, 삭제 (4) | 2021.02.17 |
RecyclerView (5) - RecyclerView item long click 시 popup menu 출력하기 (0) | 2021.02.17 |
- Total
- Today
- Yesterday
- 채굴앱
- 무료채굴
- 안드로이드 서비스
- StartService
- WEMIX
- android flag activity
- 리워드 어플
- StringUtils
- 앱테크
- M2E
- onContextItemSelected
- notifyDataSetChanged
- bindservice
- android intent
- 앱테크 추천
- 안드로이드 인텐트
- 리워드앱
- android activity flag
- 무료 채굴
- BroadcastReceiver
- p2e
- task
- mPANDO
- Android Service
- Intent
- onCreateContextMenu
- task 생성
- RoomDatabase
- android task
- registerForContextMenu
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |