1

我正在使用 Mono For Android(可能很快就会使用 MonoTouch)和 MVVM-Cross 来移植 Windows Store 应用程序(由另一个团队并行处理)。

不幸的是,Windows 商店应用程序团队开始时没有使用 MVVM-Cross。这导致某些 Windows 特定库(如 Windows.ApplicationModel.Resources)分散在应该可跨其他平台移植的代码中(例如,“Windows.ApplicationModel.Resources.ResourceLoader”用于本地化)。

我想知道其中一些 Windows 库是否有跨平台替代方案(或者可能是 mvvm-cross 插件)。或者可能是关于如何创建我自己的插件/替代方案的指导。

4

1 回答 1

1

有一个使用 windows 包内容文件和 android 资产文件的资源加载器插件。

请参阅https://github.com/slodge/MvvmCross/blob/v3/Plugins/Cirrious/ResourceLoader/Cirrious.MvvmCross.Plugins.ResourceLoader.WindowsStore/MvxStoreResourceLoader.cs

它用于(例如)客户管理示例以加载 XML 数据文件 - 请参阅https://github.com/slodge/MvvmCross-Tutorials/blob/master/Sample%20-%20CustomerManagement/CustomerManagement/CustomerManagement /Models/SimpleDataStore.cs

它也在 json i18n 插件内部使用。

如果您想在一个平台上使用不同的实现,那么您可以覆盖该平台的插件。

如果您想在所有平台上实现不同的实现,那么创建自己的插件应该很容易,或者在每个平台上注入接口的实现。参见实例化 ViewModels 和 Service 类中 mvvmcross IOC 的解释

于 2013-06-12T14:46:13.020 回答