对Xamarin.Android使用mvvmcross。为什么MvxCachingFragmentCompatActivity手动调用ShowFragment方法中的ExecutePendingTransactions?这次电话采取了什么行动?正如我所看到的,导航时几个设备可能需要大约秒。 感谢
答案 0 :(得分:1)
如果下一步操作在执行任何其他操作之前依赖于commit()的处理,那么基本上是必要的。
特别是MVVMCross:
OnFragmentChanging(fragInfo, ft);
ft.Commit();
SupportFragmentManager.ExecutePendingTransactions();
OnFragmentChanged(fragInfo);
如果应用了更改,显然只应调用OnFragmentChanged-Event。只需从MvxCachingFragmentCompatActivity
中获取其中一个代码段。
提交
FragmentTransaction
后FragmentTransaction.commit()
,计划执行 在进程的主线程上异步。如果你想 立即执行任何此类待处理操作,您可以调用它 函数(仅从主线程)这样做。请注意所有回调 和其他相关的行为将在这个电话中完成,所以 小心从哪里调用它。