如何在“空白的Android应用程序”中实现MVVMCross,而无需可移植类库(PCL),是否可以做到这一点?
我是否必须创建一个App.cs类(该项目不附带一个类),甚至有可能吗?
如果必须这样做,该怎么办?
经过研究,我发现您可以Android.App.Application
在“空白Android应用程序”中创建App.cs文件(即扩展该类的类),因此不需要PCL即可使用MVVMCross。
您必须确保您具有public App(IntPtr javaReference, JniHandleOwnership transfer)
构造函数的实现,并且某些人指出您还需要重写OnCreate方法(就像我所做的那样)。
还要确保在您的AssemblyInfo.cs文件中,不要有任何[Application]行,即。这些都不是:[assembly: Application(Debuggable = true)]
请参阅下面的代码。
using Android.App;
using Android.Runtime;
using System;
namespace YOUR.NAMESPACE
{
#if DEBUG
[Application(Debuggable = true)]
#else
[Application(Debuggable = false)]
#endif
public class App : Application
{
public App(IntPtr javaReference, JniHandleOwnership transfer) : base(javaReference, transfer)
{
//Do MVVMCross setup Here
//Mvx.RegisterType<ICalculation,Calculation>();
//Mvx.RegisterSingleton<IMvxAppStart>(new MvxAppStart<TipViewModel>());
}
public override void OnCreate()
{
base.OnCreate();
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句