【问题描述】
如下报错
Fatal Exception: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
at android.support.v4.app.FragmentManagerImpl.checkStateLoss(SourceFile:1365)
at android.support.v4.app.FragmentManagerImpl.popBackStackImmediate(SourceFile:500)
at android.support.v4.app.FragmentActivity.onBackPressed(SourceFile:176)
at com.xxx.xxx.xxx.activity.BaseActivity.onBackPressed(SourceFile:251)
at com.xxx.xxx.xxx.activity.xxxActivity.onBackPressed(SourceFile:504)
at com.xxx.xxx.xxx.activity.xxxActivity$4.onClick(SourceFile:359)
at android.view.View.performClick(View.java:5277)
【问题原因】
在Activity已经finish后,调用onBackPressed方法,导致上述报错
【解决方案】
在调用super.onBackPressed的时候,我们需要判断当前Activity是否正在执行销毁操作。
if (!isFinishing()) {
super.onBackPressed();
}