RecyclerView

RecyclerView는 컬렉션을 표시하기 위한 보기 그룹입니다. ListView 및 GridView와 같은 이전 보기 그룹을 보다 유연하게 대체할 수 있도록 설계되었습니다. 이 가이드에서는 Xamarin.Android 애플리케이션에서 RecyclerView를 사용하고 사용자 지정하는 방법을 설명합니다.

RecyclerView

많은 앱은 동일한 유형의 컬렉션(예: 메시지, 연락처, 이미지 또는 노래)을 표시해야 합니다. 종종 이 컬렉션이 너무 커서 화면에 맞지 않으므로 컬렉션이 컬렉션의 모든 항목을 원활하게 스크롤할 수 있는 작은 창에 표시됩니다. RecyclerView 은 사용자가 컬렉션을 스크롤할 수 있도록 목록 또는 표에 항목 컬렉션을 표시하는 Android 위젯입니다. 다음은 전자 메일 받은 편지함 콘텐츠를 세로 스크롤 목록에 표시하는 데 사용하는 RecyclerView 예제 앱의 스크린샷입니다.

Example app using RecyclerView to list inbox messages

RecyclerView 은 다음과 같은 두 가지 강력한 기능을 제공합니다.

  • 선호하는 구성 요소를 연결하여 동작을 수정할 수 있는 유연한 아키텍처가 있습니다.

  • 항목 보기를 재사용하고 뷰 참조를 캐시하기 위해 뷰 소유자를 사용해야 하므로 큰 컬렉션에서 효율적입니다.

이 가이드에서는 Xamarin.Android 애플리케이션에서 사용하는 RecyclerView 방법을 설명하고, Xamarin.Android 프로젝트에 패키지를 추가하는 RecyclerView 방법을 설명하고, 일반적인 애플리케이션에서 작동하는 방법을 RecyclerView 설명합니다. 실제 코드 예제는 애플리케이션에 통합 RecyclerView 하는 방법, 항목 보기 클릭을 구현하는 방법 및 기본 데이터가 변경될 때 새로 고치는 RecyclerView 방법을 보여 줍니다. 이 가이드에서는 Xamarin.Android 개발에 익숙하다고 가정합니다.

요구 사항

Android 5.0 Lollipop과 연결된 경우가 많지만 RecyclerView 지원 라이브러리 RecyclerView 로 제공됩니다. API 수준 7(Android 2.1) 이상을 대상으로 하는 앱에서 작동합니다. Xamarin 기반 애플리케이션에서 사용 RecyclerView 하려면 다음이 필요합니다.

  • Xamarin.Android – Xamarin.Android 4.20 이상을 설치하고 Visual Studio 또는 Mac용 Visual Studio 구성해야 합니다.

  • 앱 프로젝트에는 Xamarin.Android.Support.v7.RecyclerView 패키지가 포함되어야 합니다. NuGet 패키지 설치에 대한 자세한 내용은 연습: 프로젝트에 NuGet 포함을 참조하세요.

개요

RecyclerView는 Android에서 위젯과 GridView 위젯을 ListView 대체하는 것으로 간주할 수 있습니다. 이전 버전과 RecyclerView 마찬가지로 큰 데이터 집합을 작은 창에 표시하도록 설계되었지만 RecyclerView 더 많은 레이아웃 옵션을 제공하며 큰 컬렉션을 표시하는 데 더 적합합니다. 잘 ListView알고 있는 경우 다음과 같은 몇 가지 중요한 차이점이 있습니다.ListViewRecyclerView

  • RecyclerView 은 사용하기가 약간 더 복잡합니다. 에 비해 사용할 RecyclerView 코드를 더 많이 작성해야 합니다 ListView.

  • RecyclerView 는 미리 정의된 어댑터를 제공하지 않습니다. 데이터 원본에 액세스하는 어댑터 코드를 구현해야 합니다. 그러나 Android에는 다음과 같이 ListViewGridView작동하는 미리 정의된 여러 어댑터가 포함되어 있습니다.

  • RecyclerView 는 사용자가 항목을 탭할 때 항목 클릭 이벤트를 제공하지 않습니다. 대신 항목 클릭 이벤트는 도우미 클래스에서 처리됩니다. 반면 항목 ListView 클릭 이벤트를 제공합니다.

  • RecyclerView 보기를 재활용하고 보기 소유자 패턴을 적용하여 불필요한 레이아웃 리소스 조회를 제거하여 성능을 향상시킵니다. 뷰 홀더 패턴의 사용은 .에서 ListView선택 사항입니다.

  • RecyclerView 는 보다 쉽게 사용자 지정할 수 있는 모듈식 디자인을 기반으로 합니다. 예를 들어 앱에 중요한 코드 변경 없이 다른 레이아웃 정책을 연결할 수 있습니다. 대조적으로, ListView 구조에서 상대적으로 모놀리식이다.

  • RecyclerView 에는 항목 추가 및 제거에 대한 기본 제공 애니메이션이 포함되어 있습니다. ListView 애니메이션을 사용하려면 앱 개발자의 추가 작업이 필요합니다.

섹션

RecyclerView 파트 및 기능

이 항목에서는 도우미 클래스로 AdapterLayoutManagerViewHolder 함께 작동하여 지원하는 RecyclerView방법을 설명합니다. 이러한 각 도우미 클래스에 대한 개략적인 개요를 제공하고 앱에서 사용하는 방법을 설명합니다.

기본 RecyclerView 예제

이 항목에서는 다양한 요소가 구현되어 실제 사진 검색 앱을 빌드하는 방법에 RecyclerView 대한 실제 코드 예제를 제공하여 RecyclerView 파트 및 기능에 제공된 정보를 기반으로 합니다.

RecyclerView 예제 확장

이 항목에서는 기본 데이터 원본이 변경될 때 항목 클릭 이벤트를 처리하고 업데이트 RecyclerView 하는 방법을 보여 주는 예제 앱에 추가 코드를 추가합니다.

요약

이 가이드에서는 Android RecyclerView 위젯을 소개했습니다. Xamarin.Android 프로젝트에 지원 라이브러리를 추가하는 RecyclerView 방법, 보기를 재활용하는 방법 RecyclerView , 효율성을 위해 보기 소유자 패턴을 적용하는 방법 및 컬렉션을 표시하기 위해 공동 작업을 구성하는 RecyclerView 다양한 도우미 클래스를 설명했습니다. 애플리케이션에 통합되는 방법을 RecyclerView 보여 주는 예제 코드를 제공하고, 다양한 레이아웃 관리자를 연결하여 레이아웃 정책을 조정 RecyclerView하는 방법을 설명했으며, 항목 클릭 이벤트를 처리하고 데이터 원본 변경 내용을 알리는 RecyclerView 방법을 설명했습니다.

자세한 RecyclerView내용은 RecyclerView 클래스 참조를 참조하세요.