MvvmCross为缓存的ViewModel创建新的ViewController

时间:2016-09-23 09:08:26

标签: xamarin.ios mvvmcross

我使用MvvmCross v4.2.3在Xamarin.iOS项目中为我的ViewModel实现了一个ViewModel缓存。简而言之,我创建了一个自定义ViewModelLocator来缓存ViewModel,并在需要时从缓存中加载ViewModel。

这适用于VM,因为每个VM只有一个实例被实例化,但问题是每次为特定VM调用ShowViewModel()时都会实例化一个新的ViewController。

这是预期的行为吗?我是否还要缓存ViewControllers?

1 个答案:

答案 0 :(得分:0)

这是MvvmCross默认演示者中的当前行为。

您可以通过创建自己的类来覆盖此类,该类继承自MvxModalNavSupportIosViewPresenterMvxIosViewPresenter并覆盖CreateNavigationController方法。

如果您愿意,可以在该方法中返回缓存的ViewController