您的位置:首页 > 编程语言 > Java开发

java.lang.IllegalStateException: Fragment already added异常的处理

2014-07-18 18:04 429 查看
当快速双击调用FragmentTransaction.add()方法添加fragmentA,而fragmentA不是每次单独生成的,就会引起这个异常。

DialogFragment.show()内部调用了FragmentTransaction.add()方法,所以调用DialogFragment.show()方法时候也可能会出现这个异常。

在add()方法时候,先判断fragmentA.isAdded(),如下调用可以避免该异常:

if(!fragmentA.isAdded()){

FragmentManager manager = ((FragmentActivity)context).getSupportFragmentManager();

FragmentTransaction ft = manager.beginTransaction();

ft.add(fragmentA, "fragment_name");

ft.commit();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐