Bu parça yaşam döngüsü işini pek anlamıyorum.Uygulamalarımın ViewPager'ım aracılığıyla ne zaman görüntülediğimde, fragmanım neden kapsamlı olarak çağrılıyor?
Uygulamamın "ayrıntıları göster" bölümü için oldukça standart bir 3 sayfalık yatay kaydırıcı görünümü Çağrı düzenine sahibim. Uygulamamı üçün orta sayfasında başlatırım. Benim FragmentActivity 1.
FragmentPagerAdapter zaman benim app çöktü kullanarak çünkü FragmentStatePagerAdapter kullanıyorummPager.setCurrentItem(1); //default to center page, current data view fragment
örneğin bir asma durumundan geri geliyor ve ne zaman bu en hızlı yol olduğunu sayfaya sayfasını ayarlar şimdilik bunun için çalışın. İşe yaraşır ama ben devlet meselesinden şüpheleniyorum, belki de buradaki sorunumun sebebi olabilir.
Bu yüzden ilk başta her bir parçanın bir dinlenme servisinden veri almayı ve daha sonra bir listeyi gösterme işini yapacağımı düşündüm ama artık emin değilim.
OnCreateView olayları üzerindeki her bir parçadaki verileri almak için benzersiz bir eşzamansız görev çalıştırmayı denedim. Daha sonra parça yaşam döngüsü hakkında daha fazla bilgi okuduktan sonra onCreateView'a oldukça yoğun bir şekilde çağrıldığını fark ettim. Bu durum, çoğunlukla tel üzerinden çok fazla veri talep eden açgözlü bir uygulama için yapıldı.
Açık konuma getirme özelliği değişmedi. OnCreate hala 2 bitişik parça için onCreateView kadar çağrılıyor.
Tuhaf olan, Fragman Etkinliği'nde görüntülenecek ilk bölüm olarak ayarladığım parçanın yalnızca bir kez çağrılan onCreate'i almasıdır.
Burada bir şey kendini hissetmiyor.
Şu anda, ebeveyn parça etkinliğinin bildirilmesini ve parçalarda görüntülemem gereken verileri almak için tüm async görevlerini çağırmam gerektiğini düşünüyorum. Async çağrılarının sonuçlarını, ana parça etkinliği tarafından sahip olunan bir nesneye ayarlayın ve daha sonra, parçaların liste görünümü oluşturmak için üst öğenin içerdiği nesneyi kullanın.
Ancak, async görevleri ebeveyn tarafından başlatılmışsa ne olur? etkinlik
karıştı, imzalı ..... denilen ve ebeveyn tarafından taşınan nesne, henüz hazır değildir onCreateView her parçaları önce bitirmek yoktur ve sinirli
Ah, bu denemeye yardımcı olur. öyleyse, hey, bir parçadan gelen eşzamansız görevlerin işlenmesini standart bir yol gibi görüyor mu? Şu anda, parçam Etkinliğim yüklendikten sonra üç ayrı async görevini kovuyorum, doğru ya da yanlış .... – topwik
Evet, bir kullanıcı AsyncTask çalışırken cihazı döndürürse bununla ilgili olarak görebileceğim tek sorun. Ancak onlarla çok fazla tecrübem yok. AsyncTaskLoader sınıfını incelemeye değer olabilir, Loader sınıflarının sizin için bir çok şeyi otomatikleştirdiğine inanıyorum. –
Ayrıca bu konuda da kapana kısılmıştım. Şimdi işe koyuldum. Çok teşekkürler. – Durai