Xamarin.forms 未加载带有MvvmCross 5.7第一视图的Xamarin表单
我有一个Xamarin应用程序和MvvmCross 5.7,并希望将其完全移动到Xamarin表单。它按预期构建和启动,但未加载第一个页面 我基于此模板创建了项目: 我还创建了一个测试项目,以查看现有项目是否存在问题:Xamarin.forms 未加载带有MvvmCross 5.7第一视图的Xamarin表单,xamarin.forms,mvvmcross,Xamarin.forms,Mvvmcross,我有一个Xamarin应用程序和MvvmCross 5.7,并希望将其完全移动到Xamarin表单。它按预期构建和启动,但未加载第一个页面 我基于此模板创建了项目: 我还创建了一个测试项目,以查看现有项目是否存在问题: 有人能指出我缺少什么吗?添加一个从MvxSplashScreenActivity继承的SplashScreen活动,并使用方法覆盖: protected override void TriggerFirstNavigate() { StartAc
有人能指出我缺少什么吗?添加一个从MvxSplashScreenActivity继承的SplashScreen活动,并使用方法覆盖:
protected override void TriggerFirstNavigate()
{
StartActivity(typeof(MainActivity));
base.TriggerFirstNavigate();
}
或者将以下行添加到MainActivity中的OnCreate方法:
var startup = Mvx.Resolve<IMvxAppStart>();
startup.Start();
InitializeForms(bundle);
var startup=Mvx.Resolve();
startup.Start();
初始化形式(束);
您不需要在MainActivity中调用startup.Start()
,也不需要初始化xamarin表单。现在已经为您完成了(检查mvxformsappcompativity
类中的RunAppStart
方法)
快速浏览一下您的GitHub repo,您似乎没有使用[MvxContentPagePresentation()]
属性(例如)来装饰视图(即WelcomView
)。将它添加到您的WelcomeView.xaml.cs
文件中,并检查是否有帮助
如果是一个新项目,您可能需要考虑使用MvvmCross()的最新版本。有一个很棒的
我想是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完成工作,请查看mh,我明白了。谢谢你的提示。实际上startup.start()是从5.7版本开始的:嗯,你说得对,上面有这样的评论。但是,您在项目中使用的是SplashScreen,因此这不适用。不管怎样,我做了一个公关,修正了你的回购协议——我测试过了,效果很好。