Вернитесь в PageModel навигацию из PageRenderer
У меня возникла небольшая проблема, я не знаю, как вернуться к своей PageModel и продолжить навигацию после использования PageRenderer. Я пытаюсь реализовать FacebookLogin в своем приложении, поэтому я использую pageRenderer, чтобы установить страницу аутентификации facebook и использовать ее для получения информации о пользователе. Проблема в том, что когда пользователь нажимает кнопку "Войти", я обрабатываю всю его информацию и так далее, но я абсолютно не знаю, что делать после этого, чтобы продолжить навигацию.
Спасибо
редактировать
Вот что я попробовал в одном из моих занятий:
var mainContainer = new FreshMasterDetailNavigationContainer(NavigationContainerNames.MainContainer);
mainContainer.Init("Menu");
mainContainer.AddPage<ActivityFeedListPageModel>("ActivityFeed", new User());
mainContainer.AddPage<ProfilePageModel>("Profile", new User());
App.Current.MainPage = mainContainer;
После этого сказано в документации по использованию CoreMethods.SwitchOutRootNavigation(NavigationContainerNames.MainContainer);
но я не знаю, как это сделать отсюда.
1 ответ
Я бы попробовал это с двумя отдельными стеками навигации. Один для процесса входа в систему и один для основного приложения. Вы можете увидеть пример этого от первоначального автора FreshMVVM:
Также стоит проверить страницу GitHub, где также обсуждается служба навигации.
Отключение NavigationStacks на главной странице Xamarin.Forms
Изменить: В связи с вашим обновлением, вот что вы можете попробовать.
CoreMethods является членом FreshBasePageModel, который все ваши PageModel должны уже наследовать. Это означает, что вы можете вызвать SwitchOutRootNavigation в любой из ваших PageModels.