이름에서 알 수 있듯이 RecyclerView는 이러한 개별 요소를 재활용합니다. 항목이 스크롤되어 화면에서 벗어나더라도 RecyclerView는 뷰를 제거하지 않습니다. 대신 RecyclerView는 화면에서 스크롤된 새 항목의 뷰를 재사용합니다. 이렇게 뷰를 재사용하면 앱의 응답성을 개선하고 전력 소모를 줄이기 때문에 성능이 개선됩니다.
목록의 각 개별 요소는 뷰 홀더 객체로 정의된다!
뷰 홀더가 생성된다고 데이터가 연결되는건 아니다.
1. 뷰 홀더 생성
2. RecyclerView가 뷰 홀더를 뷰의 데이터에 바인딩한다. RecyclerView.ViewHolder를 확작하여 뷰 홀더를 정의한다.
- RecyclerView가 뷰와 뷰의 데이터를 바인딩 하는 방법으로 어댑터에서 메서드를 호출한다.
3. 레이아웃 관리자 LayoutManager를 선언해서 목록의 개별 요소를 정렬한다.
- RecyclerView는 데이터에 해당하는 뷰가 포함된 ViewGroup입니다. 이는 뷰 자체이므로, 다른 UI 요소를 추가할 때처럼 레이아웃에 RecyclerView를 추가하면 됩니다.
- 목록의 각 개별 요소는 뷰 홀더 객체로 정의됩니다. 뷰 홀더가 생성되었을 때는 뷰 홀더에 연결된 데이터가 없습니다. 뷰 홀더가 생성된 후 RecyclerView가 뷰 홀더를 뷰의 데이터에 바인딩합니다. RecyclerView.ViewHolder를 확장하여 뷰 홀더를 정의할 수 있습니다.
- RecyclerView는 뷰를 요청한 다음, 어댑터에서 메서드를 호출하여 뷰를 뷰의 데이터에 바인딩합니다. RecyclerView.Adapter를 확장하여 어댑터를 정의할 수 있습니다.
- 레이아웃 관리자는 목록의 개별 요소를 정렬합니다. RecyclerView 라이브러리에서 제공하는 레이아웃 관리자 중 하나를 사용하거나 레이아웃 관리자를 직접 정의할 수도 있습니다. 레이아웃 관리자는 모두 라이브러리의 LayoutManager 추상 클래스를 기반으로 합니다.
'미완성글' 카테고리의 다른 글
안드로이드 스튜디오 context (0) | 2023.06.12 |
---|---|
[Android Studio] RecyclerView 처음부터 해보자 (0) | 2023.06.12 |
컴포넌트 (0) | 2023.06.08 |
안드로이드 studio Dao와 어댑터 (0) | 2023.06.08 |
Dao를 DB파일 안에 선언하는 이유? (0) | 2023.06.08 |