我很難理解,mvvmcross導航如何在一些更復雜的情況下工作。我們來開發應用程序,我們希望使用mvvmcross作爲基礎,爲WP7和Metro創建應用程序。我們創建三個視圖模型(FirstViewModel,SecondViewModel,ThirdVIewModel),用一些數據填充它們並使用常規導航在它們之間移動(使用ShowViewModel()方法)。到目前爲止,這樣做效果很好,我們希望在Windows Phone設備上使用這種導航,這是三種不同的視圖,我們可以來回導航。MvvmCross和複雜導航
現在從Metro應用程序的角度來看 - 我們有更大的屏幕,通常用於lanscape模式,所以我們決定我們希望這三個頁面的內容顯示爲一個單一頁面。
這裏是我看到的問題 - 因爲這兩個版本的應用程序使用相同的核心和相同的視圖模型層次結構 - 似乎不可能同時具有這種行爲。從FirstViewModel到SecondViewModel的導航不適用於Metro版本的應用程序,因爲我們實際上是在第一個屏幕上,我們想要包含來自所有三個視圖模型的所有數據。另一方面,我們無法將這三種視圖模型放在較大的視圖模型中,並將其用作單視圖模型,因爲這三種單獨的視圖模型以及常規導航對於Windows Phone上的我們非常適用。
有沒有辦法使用mvvmcross提供這樣的非標準導航?如果是這樣,是否需要覆蓋/添加一些簡單的代碼(我沒有看到,也許?),或者相當複雜的東西,需要大量的時間和編碼來啓用這種功能?
感謝您的快速回復!自定義AppStart或單獨的應用程序啓動會做的伎倆,但只在應用程序的開始(應用程序啓動:)。如果在導航過程中稍後需要類似的行爲,那麼我們假設在移動設備上的頁面7,8和9與單個導航之間單獨導航到使用相同Core項目的metro應用中包含內容7,8和9的「大頁面」 ? – user3373981
我編輯我的回覆以包括這種情況。如果您認爲這是您需要的,請標記爲答案。 –