Xamarin Form навигация
У меня хороший опыт в программировании, но не в мобильной разработке. В данный момент столкнулся с необходимостью создать мобильное приложение. Ключевая проблема в том, что задачи немного нестандартные:
- У меня две MasterDetailPage и между ними происходит переключение
- При этом внутри MasterDetailPage я хочу сохранить навигацию PushAsync/PopAsync
- И в нескольких местах мне нужен будет переход на модальные страницы
Переход между MasterDetailPage осуществляется подменой основной страницы
Application.Current.MainPage = newMainPage;
При этом навигация внутри MasterDetailPage у меня не работает
await Application.Current.MainPage.Navigation.PushModalAsync(page);
Возвращает ошибку "Page must not already have a parent" Получается, Навигацию можно проводить только подменой MasterDetailPage.Detail. Но мне тогда надо реализовать и обратную навигацию (что "из коробки" делается функцией PopAsync). И для модальных окон тоже придётся пилить свой велосипед?
Подскажите пожалуйста:
- есть ли best practices в навигации, учитывая две MasterDetailPage?
- как интегрируется подход с навигацией (PushAsync) и MasterDetailPage?
- нормально ли, что вся навигация в мобильном приложении станет синхронной?
- и мне придётся самому реализовывать логику очереди предыдущих страниц (для popAsync) и модальных страниц?