무단 도용 및 복제, 사용 저작권 안내
수업 목적 외에 모든 교안 자료를 무단으로 도용 (URL 연결, 복제, 공유),
불법으로 복사하여 배포하는 것을 금지합니다. 꼭 지켜주세요!
1. RecyclerView
•
Android 5.0 때 추가된 View 이다.
•
ListView와 GridView의 구현이 비슷한 부분이 많이 이를 통합한 View이다.
•
RecyclerView는Adapter를 직접 구현해 줘야 하며 이를 통해 항목을 자유롭게 구성할 수 있다.
•
RecyclerView는 반드시 항목들을 어떠한 형태로 보여줄 것인가를 설정해야 한다.
2. ViewHolder 만들기
•
ViewHolder 클래스는 항목 하나를 구성하는 View 들의 주소 값을 가지고 있는 클래스이다.
•
이 클래스는 RecyclerView의 Adapter 클래스 내부에 구현하여 준다.
inner class ViewHolderClass(itemView : View) : RecyclerView.ViewHolder(itemView) {
val rowImageView = itemView.rowImageView
val rowTextView = itemView.rowTextView
}
Kotlin
복사
3. RecyclerView의 Adapter 클래스
•
RecyclerView는 RecyclerView.Adapter 클래스를 상속받은 클래스를 작성하여 Adapter를 구성해야 한다.
•
onCreateVeiwHolder : RecyclerView는 항목 하나를 구성하기 위해 ViewHolder를 사용한다. ViewHolder는 항목 내부를 구성하는 View 객체들을 관리하는 객체로 ViewHolder를 생성하고자 할 때 이 메서드를 호출한다.
•
onBindViewHolder : 항목을 구성하기 위해 호출한다. 여기에서 ViewHolder가 가지고 있는 View들을 구성해준다.
4. RecyclerView의 Adapter 클래스
•
getItemCount : RecyclerView의 항목의 개수를 반환한다.
5. RecyclerView의 항목 배치
•
RecyclerView는 ListView와 GridView를 통합한 View이다. 따라서 ListView 처럼 보여줄 것인지 GridView 처럼 보여줄 것인지 결정해야 한다.
•
LinearLayoutManager : ListView 처럼 항목을 보여준다.
•
GridLayoutManager : GridView 처럼 항목을 보여준다.
•
StaggerGridLayoutManager : GridView 처럼 보여주지만 완전한 그리드가 아닌 각 항목의 크기에 따라 유동적으로 조절된다.
6. 학습 정리
정리
•
RecyclerView는 ListView와 GridView를 합쳐 구현할 수 있도록 제공되는 View이다.