我正在研究MVVMCross v3,我想创建自己的插件,我按照本教程(适用于vNext)
http://slodge.blogspot.fr/2012/10/build-new-plugin-for-mvvmcrosss.html
为了与v3兼容,我将IMvxServiceConsumer和GetService更改为Mvx.Resolve。
但是在教程中有:
然后,对于WinRT,WindowsPhone和MonoTouch客户端,您还需要在setup.cs中提供一个Loader访问器 - 例如:
protected override void AddPluginsLoaders(Cirrious.MvvmCross.Platform.MvxLoaderPluginRegistry loaders)
{
loaders.AddConventionalPlugin<MyCompany.MvvmCross.Plugins.Mega.WindowsPhone.Plugin>();
base.AddPluginsLoaders(loaders);
}
我怎样才能在v3中这样做?
由于
答案 0 :(得分:4)
如果你想写一个新的插件,那么:
对于插件初始化,nuget包现在通过bootstrap文件执行此操作 - 例如查看为位置添加的文件:
引导方式是现在初始化的正常方式。
如果您确实想使用非引导技术,那么您可以这样做:
MyPlugin.PluginManager.Instance.EnsureLoaded
。protected override void AddPluginsLoaders(MvxLoaderPluginRegistry loaders)
- 和期间提供加载程序,然后您仍然需要在使用该插件之前调用EnsureLoaded()
。 有关这种旧方式的例子&#39;工作,请参阅https://github.com/slodge/MvvmCross-Tutorials/tree/master/Sample%20-%20TwitterSearch
中的UI项目中的Setup.cs