[Android]“commit already called“错误解决

  • Post author:
  • Post category:其他


在同一layout里replace不同的Fragment,需要执行多次transaction.commit();每个事务只能执行一次。所以会出现,第一次切换界面没问题,第二次报commit already called。解决办法是,将manager声明成全局对象,

final FragmentManager manager = getFragmentManager();

在每个item的点击事件里从新实例化transaction

FragmentTransaction transaction = manager.beginTransaction();
transaction.commit();



版权声明:本文为qq_37973828原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。