我正在研究mvvmcross,並且如果我可以將它用於我將要開發的iPhone(以及最終iPad和Android)應用程序。 MVVM模式非常強大,對我來說效果很好,但我有幾個視圖,我需要添加一個導航控件,允許用戶跳轉到幾個不同的其他視圖,我想知道什麼是最好的方式。創建來自多個視圖模型的視圖
現在,我創建了一個NavigationControlViewModel
,它公開了一個NavigationLinkViewModel
集合,它具有鏈接文本屬性和一個將顯示相應視圖的命令。但要將它添加到例如MyViewModel
的視圖中有點棘手。現在我所做的就是添加NavigationControlViewModel
到MyViewModel
,這樣我可以在MyView
其綁定:
private NavigationControlViewModel _nav;
public NavigationControlViewModel Navigation {
get {
_nav = _nav ?? new NavigationControlViewModel (Mvx.Resolve<INavigationService>());
return _nav;
}
}
這工作,但似乎並沒有很好地爲載我想是。我仍然需要爲MyView
添加控件NavigationControlViewModel
,然後將其添加到需要它的每個其他視圖(以及將其添加到它們的視圖模型中)。
在iOS和MVVM中處理這類事情的最佳做法是什麼?
我已經看過使用拆分視圖的視頻,但我不確定這是否是最佳方法。我需要一個垂直分割,我只需要它在一些的意見,而不是每個視圖。