티스토리 뷰
이번 포스팅에서는 ListView 에 header 와 footer 를 추가할 것이다.
ListView 에 header, footer 를 추가하면 하단 그림과 같이 화면 상단과 하단에 별도의 view 를 지정할 수 있다.
추가한 header, footer 는 list item 에 상관없이 항상 고정으로 출력된다.
참고로, 지난 포스팅에서는 ListView 에 text + image 목록 출력, click 처리, menu 출력, Item 삽입, 수정, 삭제 하는 방법에 대해 알아 보았다.
[Android/UI] - ListView (2) - ListView 에 text 출력하기
[Android/UI] - ListView (3) - ListView 에 image 추가하기
[Android/UI] - ListView (4) - ListView item 의 click 처리하기
[Android/UI] - ListView (5) - ListView item click 시 context menu 출력하기
[Android/UI] - ListView (6) - ListView item long click 시 popup menu 출력하기
[Android/UI] - ListView (7) - ListView item 추가, 수정, 삭제
Header & footer layout resource 추가
Header, footer 에 사용될 view layout resource 를 추가하자.
ListView 에 header & footer 추가
새로 생성한 layout resource 를 inflate 하여 'addHedaerView()', 'addFooterView()' 를 통해 추가하자.
Header & footer 가 추가된 ListView 의 click event 처리
Hedaer & footer 가 추가 되면 하단과 같은 이유로 getItem 에 position 을 그대로 쓸 수 없다.
- Header 가 추가되면 일반 item position 이 1 씩 추가
- Footer 가 추가되면 마지막 item position 이 footer 가 된다.
요럴때 getItemAtPosition 을 이용하면 쉽게 header, footer 를 구분할 수 있다.
Source code
https://github.com/parkho79/ListView_7
'Android > UI' 카테고리의 다른 글
GridView (2) - GridView 에 image + text 출력하기 (0) | 2021.01.26 |
---|---|
GridView (1) (0) | 2021.01.07 |
ListView (7) - ListView item 추가, 수정, 삭제 (0) | 2020.12.24 |
ListView (6) - ListView item long click 시 popup menu 출력하기 (0) | 2020.12.21 |
ListView (5) - ListView item click 시 context menu 출력하기 (0) | 2020.12.17 |
- Total
- Today
- Yesterday
- Intent
- 안드로이드 인텐트
- android flag activity
- 무료채굴
- android activity flag
- android intent
- task 생성
- 채굴앱
- android task
- 리워드 어플
- StartService
- p2e
- 안드로이드 서비스
- RoomDatabase
- M2E
- WEMIX
- 무료 채굴
- 앱테크 추천
- BroadcastReceiver
- onContextItemSelected
- 리워드앱
- 앱테크
- mPANDO
- registerForContextMenu
- onCreateContextMenu
- task
- StringUtils
- notifyDataSetChanged
- bindservice
- Android Service
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |