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:
Genellikle, ViewPager
Parçalar ile birlikte kullanılır; ancak, ek karmaşıklık Fragment
olmadan 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 Fragment
s olabilirView
. View
Gö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 FragmentPagerAdapter
alt sınıflarını sınıflandırmaktadır. Android destek kitaplığı, verilere bağlanma Fragment
ayrı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:
Görünümler ile Viewpager'de,
TreePager
ağaç kataloğunun görünümlerini (yaprak döken ve yaprak döken ve yaprak döken ağaçlardan oluşan bir görüntü galerisi) görüntülemek için nasıl kullanılacağınıViewPager
gösteren bir uygulama geliştirilmiştir.PagerTabStrip
vePagerTitleStrip
sayfa gezintisine yardımcı olan başlıkları görüntülemek için kullanılır.
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 ViewPager
gestural 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 View
gö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:
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 ViewPager
görüntülenenleri oluşturmak View
ve gerektiğinde bunları sağlamaktır. Aşağıdaki diyagramda bu kavram gösterilmektedir; bağdaştırıcı bunları oluşturup doldurur View
ve bunları öğesine ViewPager
sağ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:
Bu özel örnekte, her View
biri bir ağaç görüntüsünden ve öğesine geçirilmeden önce bir ağaç adından ViewPager
oluş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 ViewPager
dize 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 View
ile 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):
Bu kılavuzda , bağdaştırıcı ve gösterge uygulaması bileşenlerinin nasıl immplement ViewPager
ve gestural gezintisini destekleyecek şekilde tümleştirilip tümleştirilip eklenmeleri gösterilmektedir.