也许我在这里遗漏了一些明显的东西,但是使用MvvmCross并通过命令加载视图:
public ICommand LoadAnotherViewCommand
{
get { return new MvxCommand(() => ShowViewModel<MyOtherView>()); }
}
如何挂钩并控制过渡期间出现的动画?目前,所有过渡都是从左到右的滑动过渡,但当用户导航回视图并看到相同的从左到右的过渡时,它会让人感到困惑。
更新
我一直在试图弄清楚如何使用从MvxTouchViewPresenter
派生的类来实现这一目标,但收效甚微。我想我需要重载Show(Cirrious.MvvmCross.ViewModels.MvxViewModelRequest request)
和/或Show(Cirrious.MvvmCross.Touch.Views.IMvxTouchView view)
,但可以很好地弄清楚如何使其工作。 IMvxTouchView
最终来自UIViewController
,因此我无法在UIView.Transition
中使用它。此外,确定请求哪个视图以及我来自哪个视图似乎有点令人困惑。如果我查看request.ViewModelType
我希望获得所请求的视图模型的类型,而是它似乎是您来自的视图模型。同样,我希望CurrentTopViewController
成为当前视图,但它似乎是请求的视图?!?此外,我注意到,如果调用早期(在呈现任何视图之前),尝试检索CurrentTopViewController
会导致空引用异常。大概是因为内部_masterNavigationController
为空。