更改标记时出现错误“Java.lang.IllegalStateException Activity已被销毁”

时间:2015-10-09 02:33:50

标签: android android-fragments

以下链接解决了类似的问题:Getting the error "Java.lang.IllegalStateException Activity has been destroyed" when using tabs with ViewPager

但我不会在我的应用中使用viewpager,当我在片段onStop()方法之后替换片段时,我的问题出现了。我知道不应该这样做。 http://www.androiddesignpatterns.com/2013/08/fragment-transaction-commit-state-loss.html

所以我的问题是:我怎样才能解决这个问题?

这是我的代码。以下代码位于AsynTask,因此当我更改标签时,此条件会显示片段'在以下代码之前将使用onStop方法。

ErrorFragment errorFragment = new ErrorFragment();
Bundle bundle = new Bundle();
bundle.putInt("layoutId", R.layout.errorfragment_mycourse_empty);
errorFragment.setArguments(bundle);
transaction.add(R.id.framelayout_mycoursestudied, errorFragment);
transaction.commitAllowingStateLoss();//error code

1 个答案:

答案 0 :(得分:-1)

我的解决方案是在xml中使用EmptyLayout(自己定义)。如果有两个或更多条件,请显示EmptyLayout,当EmptyLayout有内容时(隐藏课程),将其隐藏。