2014-06-28 34 views
7

'un add() ve replace() yöntemiyle arasındaki temel fark Nasıl olur? Fragment'un yöntemleri nasıl değiştirir ve ekler, farklı yöntemlerle çalışır ve bu yöntemlere özel amaçlar için ihtiyaç duyacağımız herhangi bir gerçek yaşam senaryosu vardır.Fragman

+2

http://stackoverflow.com/questions/18634207/difference-between-add-replace-and-addtobackstack ziyaret – Decoy

cevap

15

önemli farktır:

replace mevcut parçasını kaldırır ve yeni bir parçasını ekler ..

ancak add, mevcut parçaları korur ve varolan parçanın aktif olacağı ve "duraklatılmış" durumda olmayacak şekilde yeni bir parçayı ekler, böylece bir geri düğmesine basıldığında, onCreateView(); Mevcut fragman (yeni fragman eklenmeden önce var olan fragman).

fazla bilgi için sadece this conversation.

2
fragmentTransaction.replace(int containerViewId, Fragment fragment, String tag) 

Açıklama - bir kaba eklenmiştir, mevcut bir fragmanının yerini. Bu, esas olarak, aynı containerViewId ile eklenen tüm parçaların ve add(int, Fragment, String) öğesinin burada verilen aynı argümanlarla, remove(Fragment) aranmasıyla aynıdır.

fragmentTransaction.add(int containerViewId, Fragment fragment, String tag) 

Açıklama - Bu aktivite durumuna bir fragmanını ekleyin. Bu bölüm isteğe bağlı olarak, (Fragment.onCreateView, null olmayan bir değer döndürürse) etkinliğini kapsayıcı görünümüne de sahip olabilir.

parçaları hakkında daha fazla ayrıntı için resmi android geliştirici linki aşağıda ziyaret ediniz

... http://developer.android.com/guide/components/fragments.html