以下链接解决了类似的问题: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
答案 0 :(得分:-1)
我的解决方案是在xml中使用EmptyLayout
(自己定义)。如果有两个或更多条件,请显示EmptyLayout
,当EmptyLayout
有内容时(隐藏课程),将其隐藏。