0
我瞭解到,popBackStack方法解除與addToBackStack方法定義的操作。安卓碎片,popBackStack方法去太背
findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragment2 = BlankFragment.newInstance("Fragment 2", "");
listaFragment2.add(fragment2);
i++;
fragmentTransaction.add(R.id.linearLayout, fragment2);
fragmentTransaction.addToBackStack("myfrag");
fragmentTransaction.commit();
//viene salvata l'AZIONE che si COMPIE E BASTA, ovvero quella di aggiungere il fragment2, in caso si volesse annullare questa
//operazione per far scomparire SOLO IL FRAGMENT2
}
});
findViewById(R.id.button4).setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
FragmentManager fragmentManager = getSupportFragmentManager();
//si annulla l'operazione a cui il popStack è legato, ovvero si annulla l'operazione di aggiungere il fragment 2
//una volta annullato, non si può ripetere il popoBackStack se non è stato precedentemente annunciato
fragmentManager.popBackStack("myfrag",1);
}
});
當我按一下按鈕,我添加了片段2號,所以如果我點擊5次按鈕,我加5個片段號碼2.當我點擊將Button4,我想刪除只有最後一個操作(在R.id.button的OnClickListener中定義),所以如果我點擊按鈕5次然後點擊button4,我只想刪除第五個fragment2,因爲從理論上講,添加第五個fragment2是最後一個操作!但是,如果我點擊button4,我刪除所有fragment2。 方法addToBackStack覆蓋並取消前一個方法(該方法是添加第四個fragment2)還是「添加自己」到前一個方法?
捷思非常感謝! – Curio