DialogFragment Fragment already added

来源:互联网 发布:linux ftp速度慢 编辑:程序博客网 时间:2024/06/07 04:52

场景1

异步调用两个接口,公用一个加载进度框(DialogFragment),前一个加载框未dismiss,后一个已经开始show


解决1

if(!mAddCategoriesDialogFragment.isAdded() 

&&!mAddCategoriesDialogFragment.isVisible()

&&!mAddCategoriesDialogFragment.isRemoving())

{
mAddCategoriesDialogFragment.show(getFragmentManager().beginTransaction(),"AddCategoriesDialogFragment");
}


tips:

public final boolean isAdded()

如果该Fragment对象被添加到了它的Activity中,那么它返回true,否则返回false。

Public final boolean isRemoving()

如果当前的Fragment对象正在从它的Activity中被删除,那么就返回true。这删除过程不是该Fragment对象的Activity的结束过程,而是把Fragment对象从它所在的Activity中删除的过程。

Public final boolean isVisible()

如果该Fragment对象对用户可见,那么就返回true。这就意味着它:1.已经被添加到Activity中;2.它的View对象已经被绑定到窗口中;3.没有被隐藏。

http://www.cnblogs.com/andriod-html5/archive/2012/06/02/2539402.html
0 1
原创粉丝点击