addToBackStack后删除片段不起作用

时间:2015-08-05 14:19:46

标签: android android-fragments fragmenttransaction

当我启动一个片段并添加到BackStack时,它不能被FragmentTransaction.remove()删除,添加如下:

   
module Common
    def list
        "some_url/#{name.tableize}.json"
    end
end

这里是删除代码:    

mManager.beginTransaction()
        .add(R.id.fragment_container, new FB(), "B")
        .addToBackStack("addB")
        .commit();

在我第一次删除片段B之后,我仍然可以通过

获得片段B.

FB fb = (FB) mManager.findFragmentByTag("B"); if (fb != null) { FragmentTransaction ft = mManager.beginTransaction(); ft.remove(fb); ft.detach(fb); ft.addToBackStack("removeB"); ft.commit(); } else { showToast("B is not exist"); }

FB fb = (FB) mManager.findFragmentByTag("B") onDestory() onPause()也不起作用。

我怎么知道碎片B是否被移除?

按照以下步骤操作可能会导致异常:

onDetach()

步骤进行:

java.lang.IllegalStateException: Fragment already added: FB{424365e0 #0 id=0x7f0c004f B}

0 个答案:

没有答案