Xamarin表单、mvvmcross、选项卡和任务的Android问题

Xamarin表单、mvvmcross、选项卡和任务的Android问题,xamarin,xamarin.forms,mvvmcross,Xamarin,Xamarin.forms,Mvvmcross,所以我使用mvvmcross 6.2和Xamarin表单。我已经使用此信息设置了选项卡。我有一个运行良好的iOS应用程序,当运行android应用程序时,每当启动其中一个任务时,我都会遇到以下异常 Java.Lang.IllegalStateException: 'FragmentManager is already executing transactions' 执行此操作时,应用程序不忙,因此忙指示灯不显示,但是应用程序需要很长时间才能从登录页面更改为主页选项卡。异常似乎并没有停止进程,但

所以我使用mvvmcross 6.2和Xamarin表单。我已经使用此信息设置了选项卡。我有一个运行良好的iOS应用程序,当运行android应用程序时,每当启动其中一个任务时,我都会遇到以下异常

Java.Lang.IllegalStateException: 'FragmentManager is already executing transactions'
执行此操作时,应用程序不忙,因此忙指示灯不显示,但是应用程序需要很长时间才能从登录页面更改为主页选项卡。异常似乎并没有停止进程,但它确实减慢了加载速度。 在我的家庭模型中 公共异步任务ShowInitialViewModels() {

        tasks.Add(NavigationService.Navigate<tab1ViewModel>());

        tasks.Add(NavigationService.Navigate<tab2ViewModel>());
        tasks.Add(NavigationService.Navigate<tab3ViewModel>());
        tasks.Add(NavigationService.Navigate<tabViewModel>());
        await CheckFortab5ViewModel();
        await Task.WhenAll(tasks);
    }
tasks.Add(NavigationService.Navigate());
添加(NavigationService.Navigate());
添加(NavigationService.Navigate());
添加(NavigationService.Navigate());
等待检查FORTAB5VIEWMODEL();
等待任务。何时(任务);
}
在我家

[XamlCompilation(XamlCompilationOptions.Compile)]
    [MvxTabbedPagePresentation(TabbedPosition.Root, WrapInNavigationPage = true, Animated = false)]
    public partial class HomePage : MvxTabbedPage<HomeViewModel>
    {
[XamlCompilation(XamlCompilationOptions.Compile)]
[MvxTabbedPagePresentation(TabbedPosition.Root,WrapInNavigationPage=true,Animated=false)]
公共部分类主页:MvxTabbedPage
{
在我的标签上

[XamlCompilation(XamlCompilationOptions.Compile)]
    [MvxTabbedPagePresentation(TabbedPosition.Tab, WrapInNavigationPage = false, NoHistory = true)]
    public partial class tab1page: MvxContentPage<tab1ViewModel>
    {
[XamlCompilation(XamlCompilationOptions.Compile)]
[MvxTabbedPagePresentation(TabbedPosition.Tab,WrapInNavigationPage=false,NoHistory=true)]
公共部分类选项卡1页:MvxContentPage
{

有什么想法吗?我应该担心吗?

你有没有检查应用程序的输出,看看为什么应用程序要花这么长时间?也许你可以设置断点来调试它。Android上的标签页需要注意的一点是,与iOS不同,它也会加载下一个标签页的内容,这是一种默认行为。有一些方法可以覆盖它s、 因此,如果我将根页面包装在导航页面中,似乎只会引发异常。奇怪..但这并不能解决问题,尽管您似乎是在使用Xamarin Native而不是Xamarin表单来实现MVVMCross选项卡式页面。您可以查看此示例中的
ShowTabsCommand
用法否,该命令只需导航到tabsrootviewmodel,它实现了我上面的方法。ShowTabsCommand=new MvxAsyncCommand(async()=>await NavigationService.Navigate());您是否检查了应用程序输出以了解应用程序花费如此长时间的原因?也许您可以设置断点进行调试。关于Android上的选项卡页面,需要注意的一点是,与iOS不同,作为默认行为,它还加载下一个选项卡页面的内容。有多种方法可以覆盖此内容。因此,似乎只有在我包装t时才会引发异常导航页面中的根页面。奇怪..但这并不能解决问题,尽管您似乎在使用Xamarin Native而不是Xamarin表单来实现MVVMCross选项卡式页面。您可以查看
ShowTabsCommand
的用法在本示例中不,该命令只是导航到tabsrootviewmodel,它将按我上面的方式输入。ShowTabsCommand=new MvxAsyncCommand(async()=>await NavigationService.Navigate());