Xamarin Form навигация

У меня хороший опыт в программировании, но не в мобильной разработке. В данный момент столкнулся с необходимостью создать мобильное приложение. Ключевая проблема в том, что задачи немного нестандартные:

  1. У меня две MasterDetailPage и между ними происходит переключение
  2. При этом внутри MasterDetailPage я хочу сохранить навигацию PushAsync/PopAsync
  3. И в нескольких местах мне нужен будет переход на модальные страницы

Переход между MasterDetailPage осуществляется подменой основной страницы

Application.Current.MainPage = newMainPage;

При этом навигация внутри MasterDetailPage у меня не работает

await Application.Current.MainPage.Navigation.PushModalAsync(page); 

Возвращает ошибку "Page must not already have a parent" Получается, Навигацию можно проводить только подменой MasterDetailPage.Detail. Но мне тогда надо реализовать и обратную навигацию (что "из коробки" делается функцией PopAsync). И для модальных окон тоже придётся пилить свой велосипед?

Подскажите пожалуйста:

  1. есть ли best practices в навигации, учитывая две MasterDetailPage?
  2. как интегрируется подход с навигацией (PushAsync) и MasterDetailPage?
  3. нормально ли, что вся навигация в мобильном приложении станет синхронной?
  4. и мне придётся самому реализовывать логику очереди предыдущих страниц (для popAsync) и модальных страниц?

Ответы (0 шт):