项目报错的地方:之前都是强制是竖屏的,因为需求变动,现在要添加横屏适配,然后在进入一个带Fragment的Aty的时候由竖屏变成横屏,然后按物理返回键,项目就会出错,报错IllegalStateException: Can not perform this action after onSaveInstanceState。(其余情况有时候也会出现这个错误)。
出错地方:Fragment 替换的时候 commit()的时候发生错误。因为使用的commit方法是在Aty的onSaveInstanceState()之后调用的,因为onSaveInstanceState方法在该Aty即将销毁前调用,来保存Aty数据的,如果保存完状态后再给他添加Fragment就会出错
解决方法:把commit()方法替换成commitAllowingStateLoss()就可以了,从名字可以看出,这种提交是允许状态值丢失的的。到此,问题解决。OK 哈哈哈