代码之家  ›  专栏  ›  技术社区  ›  flaurens

MvvmCross-卡在启动屏幕中

  •  0
  • flaurens  · 技术社区  · 6 年前

    我正在用MvvmCross和Xamarin.Forms开发一个小应用程序。 我根据MvvmCross网站上的教程构建了这个项目;问题是,当我尝试添加一个启动屏幕(在android项目上)以在主viewmodel加载时出现时,它会被卡住。。。

        [Activity(
        Label = "@string/app_name",
        Theme = "@style/AppTheme",
        MainLauncher = false,
        LaunchMode = LaunchMode.SingleTask,
        ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
    public class Start : MvxFormsAppCompatActivity<Setup, App, FormsApp>
    {
        //LaunchMode = LaunchMode.SingleTask
        //MvxFormsAppCompatActivity<MvxFormsAndroidSetup<App, FormsApp>, App, FormsApp>
        protected override void OnCreate(Bundle bundle)
        {
            TabLayoutResource = Resource.Layout.Tabbar;
            ToolbarResource = Resource.Layout.Toolbar;
            base.OnCreate(bundle);
    
        }
    }
    

    设置:

        public class Setup : MvxFormsAndroidSetup<App, FormsApp>
    {
    }
    

    飞溅屏幕:

        [Activity(
        Label = "Template", 
        MainLauncher = true, 
        NoHistory = true,
        Theme = "@style/AppTheme",
        Icon = "@drawable/icon")]
    public class SplashScreen : MvxSplashScreenActivity
    {
        public SplashScreen()
            :base(Resource.Layout.SplashScreen)
        {
        }
        protected override void RunAppStart(Bundle bundle)
        {
            StartActivity(typeof(Start));
            base.RunAppStart(bundle);
        }
    }
    

    1 回复  |  直到 6 年前
        1
  •  3
  •   Community CDub    5 年前

    您使用的是哪个版本的MvvmCross?

    Playground.Forms.Droid -我建议在您的机器上下载MvvmCross源代码(使用developbranch)并尝试运行此示例。

    我怀疑问题出在你继承的那部分 MvxSplashScreenActivity MvxFormsSplashScreenActivity<Setup, Core.App, FormsApp> . 看看 splash screen class 看起来像是在操场上

    如果这没有帮助,那就检查一下你的应用程序和游乐场示例应用程序有什么不同,并填写缺失的部分

    推荐文章