参考网址:Android can not perform this action after onSaveInstanceState 问题解决_colorfulshark-CSDN博客
解决方法:commit()替换成commitAllowingStateLoss()
old
FragmentTransaction trx = getSupportFragmentManager().beginTransaction();if (!fragments[0].isAdded()) { // 隐藏当前的fragment,add下一个到Activity中 trx.remove(fragments[choose]).add(R.id.activity_main_new, fragments[0]).commit();} else { // 隐藏当前的fragment,显示下一个 trx.hide(fragments[choose]).show(fragments[0]).commit();}
new
FragmentTransaction trx = getSupportFragmentManager().beginTransaction();if (!fragments[0].isAdded()) { // 隐藏当前的fragment,add下一个到Activity中 trx.remove(fragments[choose]).add(R.id.activity_main_new, fragments[0]).commitAllowingStateLoss();} else { // 隐藏当前的fragment,显示下一个 trx.hide(fragments[choose]).show(fragments[0]).commitAllowingStateLoss();}