2016-03-23 16 views
1

Uygulamamda 6 parçayı yönetmek için kullanılan sekmelerle bir etkinliğim var. Bir web servisinden indirdiğim bazı verilere dayanarak programatik olarak bazı görünümler oluşturmam gereken bazı bölümler var. Programlı olarak oluşturduğum görünümleri nasıl kaydedebilirim ve bunları her seferinde yeniden yaratma gereği olan parçaların özgeçmişinde nasıl geri yükleyebilirim?Bir görünüm için programlı olarak oluşturulmuş görünümü kaydet ve onresume içinde geri yükle

cevap

0

Parçalarınız için tekil desen'u kullanmalısınız.

A tekil Java yalnızca bir örneği erişiminin küresel noktası bu örnek sağlar oluşturulabilir kendisi için bir sınıftır. Tekil desen, bunun nasıl arşivlenebileceğini açıklar. Örneğin

:

YourFragment.getInstance(); 

aramak gerekir sizin fragmanında yöntemini erişmek istiyorsanız:

public class YourFragment extends Fragment { 
     private static YourFragment uniqInstance; 

     private YourFragment() { 
     } 

     public static YourFragment getInstance() { 
     if (uniqInstance == null) { 
      uniqInstance = new YourFragment(); 
     } 
     return uniqInstance; 
     } 
     ......... 
} 

aramak gerekir sizin parçasını erişmek istediğiniz

YourFragment.getInstance().yourMethod(); 

Tabi ki eriştiğiniz yöntem kamuya açıklanmalıdır.

Umut eder!

+1

Cevabınız için teşekkür ederiz, bazı durumlarda yararlıdır, fakat benim durumumda en uygun çözüm değildir. Zaten parçanın yaratılışını sadece bir kere çağırıyordum. Cevapları beklerken kendi başıma bir çeşit çözüm bulmuştum. Parçanın kök görünümünü, parçanın kendisinin bir değişkeni haline getirdim ve OnCreateView'a her çağrıldığında sadece görünüm boşsa görünümü şişiririm, aksi halde daha önce oluşturduğum aynı görünümü döndürürüm. Artık sorun, web servis sağlayıcısından veri güncellemeyi tespit ettiğimde görünümleri güncellemektir. – Marcel

İlgili konular