小编use*_*737的帖子

FragmentManager已经在commitAllowingStateLoss()上执行事务

java.lang.IllegalStateException: FragmentManager is already executing transactions
Run Code Online (Sandbox Code Playgroud)

我已经阅读了有关它的所有StackOverflow问题,没有任何帮助.只是想分享我的经验

public void onResume() {
    super.onResume()

    if(condition) replaceFragment()
}

public void replaceFragment() {
    if (fragmentName != null && !this.isDestroyed()) {
        final FragmentTransaction ft = getSupportFragmentManager().beginTransaction();

        ft.replace(container_id, FragmentInstantiate());
        ft.commitAllowingStateLoss();
    }
}
Run Code Online (Sandbox Code Playgroud)

它是commit()/ commitAllowingStateLoss()导致IllegalStateException:FragmentManager已经在执行事务.不是commitNow()或executePendingTransactions()

android android-fragments fragmentmanager

4
推荐指数
1
解决办法
3658
查看次数