【问题标题】:Xamarin Forms with MvvmCross 5.7 First View not loaded未加载 MvvmCross 5.7 第一个视图的 Xamarin 表单
【发布时间】:2018-09-25 12:30:00
【问题描述】:

我有一个 Xamarin 应用程序和 MvvmCross 5.7,并希望将其完全移动到 Xamarin Forms。它按预期构建和启动,但没有加载第一页。

我根据这个模板创建了项目:https://github.com/martijn00/MvxForms

我还创建了一个测试项目,看看我现有的项目是否有问题:https://github.com/NPadrutt/XFTestProject

谁能指出我遗漏了什么?

【问题讨论】:

    标签: xamarin.forms mvvmcross


    【解决方案1】:

    要么添加一个 SplashScreen Activity,它继承自 MvxSplashScreenActivity 并使用方法覆盖:

        protected override void TriggerFirstNavigate()
        {
            StartActivity(typeof(MainActivity));
            base.TriggerFirstNavigate();
        }
    

    或者将这些行添加到 MainActivity 中的 OnCreate 方法中:

            var startup = Mvx.Resolve<IMvxAppStart>();
            startup.Start();
            InitializeForms(bundle);
    

    【讨论】:

      【解决方案2】:

      您不需要在 MainActivity 中调用 startup.Start(),也不需要初始化 xamarin 表单。现在已经为您完成了(检查mvvmcross sources 中的RunAppStart 方法以获取MvxFormsAppCompatActivity 类)。

      快速浏览一下您的 GitHub 存储库,您似乎没有使用[MvxContentPagePresentation()] 属性(例如example from MvvmCross Playground)来装饰您的视图(例如WelcomView)。将其添加到您的 WelcomeView.xaml.cs 文件中并检查是否有帮助

      如果是新项目,您可能需要考虑使用最新版本的 MvvmCross (v6)。有一个很棒的step by step guide to setup Xamarin.Forms with it by Nick Randolph

      【讨论】:

      • 我猜是 MvvmCross 6.0 而不是 5.7?在 5.7 版本分支中,当您没有启动画面时,根据需要提到了 startup.start()。该项目只是我想从嵌入式表单迁移到完整的 xamarin 表单的现有项目的最小测试示例。我也看过 MvvmCross 6.0。但我使用 AutoFac 并且 Extras 库目前还没有更新 :)
      • @NPadrutt 不,对于 5.7 和 6.0 版本,您无需在 MainActivity 中调用 Start。 Martjin 的 github 示例现在已经过时了,所以不要拿它作为例子。如果您想了解如何使用 MvvmCross 完成工作,请查看Playground projects in the official MvvmCross repo
      • 嗯,我明白了。感谢您的提示。实际上 startup.start() 来自 5.7 Release Playground:github.com/MvvmCross/MvvmCross/blob/release/5.7.0/TestProjects/…
      • 嗯,你是对的,有那个评论。但是,您在项目中使用 SplashScreen - 所以这不适用。无论如何..我做了一个 PR 并修复了你的 repo - 我测试了它,它有效。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-04
      • 2019-07-13
      • 1970-01-01
      • 2022-01-20
      • 2016-06-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多