ViewPager

ViewPager, gestural gezintisi uygulamanızı sağlayan bir düzen yöneticisidir. Gestural gezintisi, kullanıcının veri sayfalarında gezinmek için sola ve sağa doğru çekmesini sağlar. Bu kılavuzda, Parçalarla ve Parçalar olmadan ViewPager ile gestural gezintisi gerçekleştirme açıklanmaktadır. Ayrıca PagerTitleStrip ve PagerTabStrip kullanarak sayfa göstergeleri eklemeyi de açıklar.

Genel bakış

Uygulama geliştirmede yaygın bir senaryo, kullanıcılara eşdüzey görünümler arasında sinirsel gezinti sağlama gereksinimidir. Bu yaklaşımda, kullanıcı içerik sayfalarına (örneğin, bir kurulum sihirbazında veya slayt gösterisinde) erişmek için sola veya sağa doğru çekin. Android Destek Kitaplığı v4'te bulunan pencere öğesini kullanarak ViewPager bu çekme görünümlerini oluşturabilirsiniz. ViewPager, her alt görünümün düzende bir sayfa oluşturduğu birden çok alt görünümden oluşan bir düzen pencere öğesidir:

Yatay çekme örneğiyle TreePager uygulamasının ekran görüntüleri

Genellikle, ViewPager Parçalar ile birlikte kullanılır; ancak, ek karmaşıklık Fragmentolmadan kullanmak ViewPager isteyebileceğiniz bazı durumlar vardır.

ViewPager görüntülenecek görünümleri sağlamak için bir bağdaştırıcı deseni kullanır. Burada kullanılan bağdaştırıcı kavramsal olarak RecyclerView tarafından kullanılan bağdaştırıcıya benzer; kullanıcıya görüntülenen sayfaları ViewPager oluşturmak için uygulamasını PagerAdapter sağlarsınız. tarafından ViewPager görüntülenen sayfalar s veya Fragments olabilirView. ViewGörüntülenen bağdaştırıcı, Android'in PagerAdapter temel sınıfını alt sınıflandırır. Görüntülerse Fragment, bağdaştırıcı Android'in FragmentPagerAdapteralt sınıflarını sınıflandırmaktadır. Android destek kitaplığı, verilere bağlanma Fragmentayrıntılarıyla ilgili yardımcı olmak için de (alt sınıfınıPagerAdapter) içerir FragmentPagerAdapter .

Bu kılavuzda her iki yaklaşım da gösterilmektedir:

Gereksinimler

Uygulama projenizde kullanmak ViewPager için Android Destek Kitaplığı v4 paketini yüklemeniz gerekir. NuGet paketlerini yükleme hakkında daha fazla bilgi için bkz . İzlenecek yol: Projenize NuGet ekleme.

Mimari

ile ViewPagergestural gezintisi uygulamak için üç bileşen kullanılır:

  • ViewPager
  • Bağdaştırıcı
  • Çağrı İşareti Göstergesi

Bu bileşenlerin her biri aşağıda özetlenmiştir.

ViewPager

ViewPager , bir kerede bir koleksiyonu Viewgörüntüleyen bir düzen yöneticisidir. Görevi kullanıcının çekme hareketini algılamak ve uygun şekilde sonraki veya önceki görünüme gitmektir. Örneğin, aşağıdaki ekran görüntüsünde bir kullanıcı hareketine yanıt olarak bir ViewPager görüntüden diğerine geçişin yapılması gösterilmektedir:

Görünümler arasında geçiş görüntüleyen TreePager uygulamasının yakın görünümü

Bağdaştırıcı

ViewPager , verilerini bir bağdaştırıcıdan çeker. Bağdaştırıcının işi, tarafından ViewPagergörüntülenenleri oluşturmak Viewve gerektiğinde bunları sağlamaktır. Aşağıdaki diyagramda bu kavram gösterilmektedir; bağdaştırıcı bunları oluşturup doldurur Viewve bunları öğesine ViewPagersağlar. ViewPager kullanıcının çekme hareketlerini algıladıkça bağdaştırıcıdan görüntülenecek uygun View görüntüyü sağlamasını ister:

Bağdaştırıcı'nın görüntüleri ve adları ViewPager'e nasıl bağlayacağını gösteren diyagram

Bu özel örnekte, her View biri bir ağaç görüntüsünden ve öğesine geçirilmeden önce bir ağaç adından ViewPageroluşturulur.

Çağrı İşareti Göstergesi

ViewPager büyük bir veri kümesini görüntülemek için kullanılabilir (örneğin, bir görüntü galerisi yüzlerce resim içerebilir). Kullanıcının büyük veri kümelerine gitmesine yardımcı olmak için genellikle ViewPager bir dize görüntüleyen bir çağrı göstergesi eşlik eder. Dize görüntü başlığı, başlık veya yalnızca geçerli görünümün veri kümesi içindeki konumu olabilir.

Sizin için bu gezinti bilgilerini üretebilecek iki görünüm vardır: PagerTabStrip ve PagerTitleStrip. Her biri bir öğesinin en üstünde bir ViewPagerdize görüntüler ve her biri verilerini 'nin bağdaştırıcısından ViewPagerçeker, böylece her zaman o anda görüntülenen Viewile eşitlenmiş durumda kalır. Aralarındaki fark, PagerTabStrip "geçerli" dize PagerTitleStrip için görsel bir gösterge içermesi ve içermemesidir (bu ekran görüntülerinde gösterildiği gibi):

PagerTitleStrip ve PagerTabStrip ile TreePager uygulamasının ekran görüntüleri

Bu kılavuzda , bağdaştırıcı ve gösterge uygulaması bileşenlerinin nasıl immplement ViewPagerve gestural gezintisini destekleyecek şekilde tümleştirilip tümleştirilip eklenmeleri gösterilmektedir.