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