RecyclerView

RecyclerView koleksiyonları görüntülemek için bir görünüm grubudur; ListView ve GridView gibi eski görünüm grupları için daha esnek bir değişim olacak şekilde tasarlanmıştır. Bu kılavuzda, Xamarin.Android uygulamalarında RecyclerView'ın nasıl kullanılacağı ve özelleştirileceği açıklanmaktadır.

RecyclerView

Birçok uygulamanın aynı türdeki koleksiyonları (iletiler, kişiler, resimler veya şarkılar gibi) görüntülemesi gerekir; genellikle, bu koleksiyon ekrana sığmayacak kadar büyük olduğundan koleksiyon, koleksiyondaki tüm öğeler arasında sorunsuz bir şekilde gezinebilen küçük bir pencerede sunulur. RecyclerView , kullanıcının koleksiyonda gezinmesini sağlayan bir liste veya kılavuzdaki öğe koleksiyonunu görüntüleyen bir Android pencere öğesidir. Aşağıda, e-posta gelen kutusu içeriğini dikey kaydırma listesinde görüntülemek için kullanılan RecyclerView örnek bir uygulamanın ekran görüntüsü verilmiştir:

Gelen kutusu iletilerini listelemek için RecyclerView kullanan örnek uygulama

RecyclerView iki cazip özellik sunar:

  • Tercih ettiğiniz bileşenleri takarak davranışını değiştirmenizi sağlayan esnek bir mimariye sahiptir.

  • Öğe görünümlerini yeniden kullandığından ve görünüm başvurularını önbelleğe almak için görünüm tutucularının kullanılmasını gerektirdiğinden büyük koleksiyonlarda verimlidir.

Bu kılavuzda Xamarin.Android uygulamalarında nasıl kullanılacağı RecyclerView açıklanır; paketin RecyclerView Xamarin.Android projenize nasıl ekleneceği ve tipik bir uygulamadaki işlevlerin nasıl RecyclerView kullanılacağı açıklanır. Gerçek kod örnekleri, uygulamanızla tümleştirmeyi RecyclerView , öğe görünümü tıklamasını nasıl uygulayabileceğinizi ve temel alınan veriler değiştiğinde nasıl yenileyebileceğinizi RecyclerView göstermek için sağlanır. Bu kılavuzda Xamarin.Android geliştirme hakkında bilgi sahibi olduğunuz varsayılır.

Gereksinimler

Genellikle Android 5.0 Lollipop ile ilişkilendirilse RecyclerView de destek kitaplığı olarak sunulur; RecyclerView API düzeyi 7 (Android 2.1) ve üzerini hedefleyen uygulamalarla çalışır. Xamarin tabanlı uygulamalarda kullanmak RecyclerView için aşağıdakiler gereklidir:

  • Xamarin.Android – Xamarin.Android 4.20 veya üstü Visual Studio veya Mac için Visual Studio ile yüklenip yapılandırılmalıdır.

  • Uygulama projeniz Xamarin.Android.Support.v7.RecyclerView paketini içermelidir. NuGet paketlerini yükleme hakkında daha fazla bilgi için bkz . İzlenecek yol: Projenize NuGet ekleme.

Genel bakış

RecyclerView, Android'de ve GridView pencere öğelerinin ListView yerine düşünülebilir. Öncülleri gibi, RecyclerView büyük bir veri kümesini küçük bir pencerede görüntüleyecek şekilde tasarlanmıştır, ancak RecyclerView daha fazla düzen seçeneği sunar ve büyük koleksiyonları görüntülemek için daha iyi iyileştirilmiştir. hakkında ListViewbilginiz varsa ve RecyclerViewarasında ListView birkaç önemli fark vardır:

  • RecyclerView kullanımı biraz daha karmaşıktır: ile karşılaştırıldığında daha RecyclerView fazla kod yazmanız gerekir ListView.

  • RecyclerView önceden tanımlanmış bir bağdaştırıcı sağlamaz; veri kaynağınıza erişen bağdaştırıcı kodunu uygulamanız gerekir. Ancak Android, ve GridViewile ListView çalışan önceden tanımlanmış birkaç bağdaştırıcı içerir.

  • RecyclerView kullanıcı bir öğeye dokunduğunda öğe tıklama olayı sunmaz; bunun yerine, öğe tıklama olayları yardımcı sınıflar tarafından işlenir. Buna karşılık, ListView öğe tıklama olayı sunar.

  • RecyclerView görünümleri geri dönüştürerek ve gereksiz düzen kaynağı aramalarını ortadan kaldıran görünüm tutucu desenini zorunlu tutarak performansı artırır. Görünüm tutucu deseninin kullanımı içinde ListViewisteğe bağlıdır.

  • RecyclerView özelleştirmeyi kolaylaştıran modüler bir tasarıma dayanır. Örneğin, uygulamanızda önemli kod değişiklikleri olmadan farklı bir düzen ilkesi takabilirsiniz. Buna karşılık, ListView yapıda nispeten monolitiktir.

  • RecyclerView öğe ekleme ve kaldırma için yerleşik animasyonlar içerir. ListView animasyonlar, uygulama geliştiricisinin biraz daha çaba harcamasını gerektirir.

Bölümler

RecyclerView Parçaları ve İşlevselliği

Bu konu başlığı altında, , LayoutManagerve ViewHolder 'nin Adapterdestek RecyclerViewiçin yardımcı sınıflar olarak birlikte nasıl çalıştığı açıklanmaktadır. Bu yardımcı sınıfların her birine üst düzey bir genel bakış sağlar ve bunları uygulamanızda nasıl kullandığınızı açıklar.

Temel RecyclerView Örneği

Bu konu, çeşitli öğelerin gerçek bir fotoğraf tarama uygulaması oluşturmak için nasıl RecyclerView uygulandığına ilişkin gerçek kod örnekleri sağlayarak RecyclerView Bölümleri ve İşlevselliği'nde sağlanan bilgileri temel alır.

RecyclerView Örneğini Genişletme

Bu konu, temel alınan veri kaynağı değiştiğinde öğe tıklama olaylarının nasıl işleneceğini ve güncelleştirileceklerini RecyclerView göstermek için A Basic RecyclerView Örneği'nde sunulan örnek uygulamaya ek kod ekler.

Özet

Bu kılavuzda Android RecyclerView pencere öğesi tanıtıldı; Xamarin.Android projelerine destek kitaplığının nasıl ekleneceği RecyclerView , görünümlerin nasıl RecyclerView geri dönüştürüldüğünü, verimlilik için görünüm sahibi desenini nasıl zorladığı ve koleksiyonları görüntülemek için işbirliği yapan çeşitli yardımcı sınıfların RecyclerView nasıl uygulandığı açıklandı. Bir uygulamayla nasıl RecyclerView tümleştirilmiş olduğunu göstermek için örnek kod sağladı, farklı düzen yöneticilerini takarak 'nin düzen ilkesinin nasıl uyarlandığını RecyclerViewaçıkladı ve öğe tıklama olaylarının nasıl işleneceğini ve veri kaynağı değişikliklerini nasıl bildireceklerini RecyclerView açıkladı.

hakkında RecyclerViewdaha fazla bilgi için bkz . RecyclerView sınıf başvurusu.