AddToBackStack (null) ve ardından bir commit () ifadesinin anlamı nedir?
Alıntılanan belgeler:
AddToBackStack () çağrıldığında, değiştirme işlemi arka yığına kaydedilir, böylece kullanıcı işlemi tersine çevirebilir ve Geri düğmesine basarak önceki parçayı geri getirebilir.
İşleme birden fazla değişiklik eklerseniz (başka bir add () veya remove () gibi) ve addToBackStack () 'i çağırırsanız, commit () çağrılmadan önce uygulanan tüm değişiklikler tek bir işlem olarak ve Geri düğmesi arka yığına eklenir. hepsini birlikte tersine çevirecek.
Bir FragmentTransaction'a değişiklikleri eklediğiniz sıra, şu durumlar dışında önemli değildir:
commit()Son aramalısın . Aynı kaba birden çok parça ekliyorsanız, bunları eklediğiniz sıra, görünüm hiyerarşisinde görünecekleri sırayı belirler.
Yani sonunda taahhüt etmelisiniz.
AddToBackStack için neden boş bir parametre geçirmeniz gerekiyor?
Boş olması gerekmez, bir dizge olabilir. İstemiyorsan, boş geç.
genel soyut FragmentTransaction addToBackStack (Dize adı)
API seviyesi 11'de eklendi Bu işlemi arka yığına ekleyin. Bu, işlemin tamamlandıktan sonra hatırlanacağı ve daha sonra yığından çıkarıldığında işleminin tersine döneceği anlamına gelir.
Parametreler adı Bu arka yığın durumu için isteğe bağlı bir ad veya boş.
İlgili:
Son satır .addToBackStack (null) .commit () olmadan kodu çalıştırdığım için bu kod işe yaramaz gibi görünüyor ve sorunsuz çalışıyor
Önceki parçaya gitmek istiyorsanız, onu arka istifleme ekleyin. Bu nedenle, parçayı arka yığına eklemek isteyip istemediğinize bağlıdır.
Bu şekilde eklendikten sonra o parça nasıl elde edilir?
Parça örneğine zaten sahipsiniz firstFragment. Yani parçayı daha sonra almakla ne demek istediğini anlamıyorum.
Daha fazla bilgi @
http://developer.android.com/guide/components/fragments.html
http://developer.android.com/reference/android/app/FragmentTransaction.html#addToBackStack(java.lang.String)