0

我是使用 Xamarin 开发的新手,我尝试在所有平台的共享项目中使用 MvvmCross 库。似乎我成功地在每个项目中添加了库,但现在我很困惑如何开始。我试图按照文档进行操作,但我认为我没有正确理解。我可以使用 CreatableTypes 方法,但文档中没有 EndingWith 或其他方法。我发现的例子主要是关于 PCL 的。我什至不知道这是版本问题还是我错过了一些重要的东西。任何提示或链接都会有所帮助。

4

1 回答 1

0

首先要小心您阅读的信息,始终检查日期,否则您将浪费时间阅读一些过时的文章。最重要的资源是 prolly 官方示例:https ://github.com/MvvmCross/MvvmCross-Samples

通常,您将 PCL 用于所有背景内容,并且应该有一些像这样的类https://github.com/MvvmCross/MvvmCross-Samples/blob/master/TipCalc/TipCalc.Core/App.cs。在本课程中,您应该能够像这样为 IoC 注册所有服务:

public override void Initialize()
{  
    CreatableTypes().EndingWith("Service").AsInterfaces().RegisterAsSingleton();

然后 MVVMCross 自动负责初始化它,如果您在 ViewModel 中执行构造函数注入作为示例...

public MainViewModel(IPreferenceService preferenceService)
{
 // Do Something here with the Service
}

...你只需要调用它来显示它的连接视图:

ShowViewModel<MainViewModel>();

所以基本上首先尝试了解示例,我认为 TipCalc 仍然是最新的,至少它是 MVVMCross 4.0 https://github.com/MvvmCross/MvvmCross-Samples/tree/master/TipCalc

于 2016-06-01T12:40:04.427 回答