У меня возникли трудности с пониманием, как будет работать навигационная система mvvmcross в более сложных ситуациях. Давайте примем приложение, которое мы хотим сделать для WP7 и Metro, используя mvvmcross в качестве базы. Мы создаем три модели вида (FirstViewModel, SecondViewModel, ThirdVIewModel), заполняем их некоторыми данными и используем регулярную навигацию для перемещения между ними (используя ShowViewModel() методов). Пока это хорошо работает, и мы хотим, чтобы этот вид навигации на устройстве Windows Phone был разобран, что представляет собой три отдельных вида, которые мы можем перемещать взад и вперед.MvvmCross и сложная навигация
Теперь, смотря с точки зрения приложения Metro, у нас есть гораздо больший экран, обычно используемый в режиме lanscape, поэтому мы решили, что контент этих трех страниц будет показан как одна страница.
Вот где я вижу проблему - потому что обе версии приложения используют одну и ту же Core и одну и ту же иерархию моделей представлений - кажется, невозможно иметь такое поведение в одно и то же время. Навигация с FirstViewModel на SecondViewModel не распространяется на версию приложения Metro, потому что мы на самом деле на первом экране, который мы хотим содержать все данные из всех трех моделей. На противоположной стороне - мы не можем помещать эти три модели просмотра в более крупную и использовать их как единую модель обзора, потому что эти три отдельные модели просмотра вместе с обычной навигацией хорошо работают для нас на Windows Phone.
Есть ли способ обеспечить такую нестандартную навигацию с использованием mvvmcross? Если да, то какой-то простой код, который должен быть перезаписан/добавлен (что я не вижу, может быть?), Или, скорее, сложный материал, требующий значительного количества времени и кодирования, чтобы включить такую функциональность?
Спасибо за быстрый ответ! Пользовательский AppStart или отдельное приложение начнет делать трюк, но только в начале приложения (начало приложения :). Что, если я захочу подобное поведение позже во время навигации, скажем, иметь отдельную навигацию между страницами 7, 8 и 9 на мобильном телефоне и одну навигацию на «большую страницу», содержащую контент 7,8 и 9 в приложении метро, используя тот же проект Core ? – user3373981
Я редактирую свой ответ, чтобы включить этот сценарий. Отметьте как ответ, если вы считаете, что это то, что вам нужно. –