【问题标题】:MvvmCross creates new ViewController for cached ViewModelMvvmCross 为缓存的 ViewModel 创建新的 ViewController
【发布时间】:2016-09-23 19:27:22
【问题描述】:

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

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

这是预期的行为吗?我是否也必须缓存 ViewControllers?

【问题讨论】:

    标签: xamarin.ios mvvmcross


    【解决方案1】:

    这是 MvvmCross 中默认 Presenter 的当前行为。

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

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

    【讨论】:

      猜你喜欢
      • 2013-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-08
      • 1970-01-01
      • 1970-01-01
      • 2013-06-01
      相关资源
      最近更新 更多