我在我的代码中使用了MVP模式。在Activity onCreate()
我调用了一个带有服务调用的演示者方法。关于服务电话的响应
我抛出一个回调来询问活动,服务已经完成了它的工作,并做了更改片段。有一段时间一切正常,我可以看到加载响应服务的片段。但问题是,当我按下设备的后退按钮并重新打开活动时,应用程序会因行 transaction.commit()
而崩溃
java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
请帮我找一个修复 谢谢
答案 0 :(得分:1)
也许你不会从之前的活动中取消订阅onDestroy?
答案 1 :(得分:1)
更改你的onBackPressed方法:
@Override
public void onBackPressed() {
if (isComeFromLogin) {
finish();
}
else{
super.onBackPressed();
}
}
答案 2 :(得分:0)
即使使用非MVP应用程序,也会发生这种情况。我不是原因,但你可以覆盖 onBackPressed 方法。
@Override
public void onBackPressed () {
//super.onBackPressed(); //Keep it as it is and finish activity
finish();
}