2013-04-02 17 views
5

Herhangi biri bana yardımcı olabilir. Bir Parçası var FRAGMENT A ve dinamik olarak bir mizanpaja ekliyorum ... 3 boyutlu FRAGMENT A'yı bu mizanpaja eklediğimi varsayalım. O zaman nasıl bu 3 Fragment örneğini programsal olarak kaldırabilirim. Google aramalarını denedim ve başka bir konuları StackOverflow'daki ama çalışmıyor .. Dinamik olarak eklenen parçaları Fragmentleri düzeninden nasıl çıkarabiliriz

bana

yardım lütfen aslında oldukça basit size

cevap

17

ederiz:

:

diyelim ki böyle fragman eklendi diyelim 0

fragmentTransac.add(R.id.content, fragA); 

yerine, kaldırmak çok

fragmentTransac.add(R.id.content, new FragA(), "first"); 
// then the other 
fragmentTransac.add(R.id.content, new FragA(), "second"); 

sonra TAG ile ekleriz:

Fragment f = getFragmentManager().findFragmentByTag("first"); 
if(f!=null) fragmentTransac.remove(f); 
fragmentTransac.commit(); 

mutlu kodlama =] Yardımlarınız için

+0

merhaba, teşekkürler ... ama çalışmıyor ... yolunda başka bir yol önerebilirsiniz – sam

+0

. Çalışmıyorsa, doğru şekilde uygulanmadığı için. Örneğe koyduğum 'fragmentTransac' nesnesinin genellikle getFragmentManager(). BeginTransaction() öğesinden elde edilen FragmentTransaction olduğunu anladınız mı? Ayrıca getFragmentmanager() 'ın uyumluluk paketi instadını kullanıyorsanız getSupportFragmentManager()' i çağırmalısınız? Bu detayları eklemedim çünkü çok basitler. – Budius

+0

Ben bu şeyleri knpw ... ben bu gibi koymakFragment f = getSupportFragmentManager(). FindFragmentByTag ("merhaba"); \t FragmentTransaction ft = getSupportFragmentManager() beginTransaction(); \t ft.remove (f); – sam

İlgili konular