У меня проблема при использовании Xamarin.Forms вместе с Prism.Forms (Unity) на устройстве Android 5.1.1 (Lollipop).
В частности, если я перехожу к формам с помощью «animation: true», эти формы не всегда работают правильно впоследствии - в частности, формы не всегда обновляются в ответ на событие PropertyChanged. Формы отлично работают на Android 6.0 и 7.1 (это единственные устройства, доступные для тестирования).
Если я изменю все свои вызовы на INavigationService.NavigateAsync так, что «анимация» будет ложной, эти формы будут вести себя правильно до тех пор, пока я не буду использовать аппаратную кнопку «назад» для выхода из формы (поскольку она затем снова анимируется). Я даже создал переопределение «UnityPageNavigationService», которое переопределяет «анимированный» параметр при вызовах «DoPop», «DoPush» и «GoBackAsync» (я почти уверен, что метод NavigateAsync в конечном итоге вызывает один из них для всех требований, кроме в случае изменения содержимого MasterDetailPage).
Я почти уверен, что это проблема Xamarin, а не проблема Prism, поскольку, просмотрев код на GitHub, мне кажется, что реализация Prism INavigationService в конечном итоге возвращается к методам Page.Navigation.PushAsync (...) и т. Д. и я также почти уверен, что служба навигации Prism не перехватывает кнопку возврата и не взаимодействует с ней.
Есть ли способ отключить анимацию, когда навигация запускается аппаратной кнопкой возврата?
Есть ли способ переопределить реализацию INavigation для платформы (в данном случае, очевидно, Android)?
Есть ли здесь известная проблема и / или обходной путь для Xamarin Forms на Lollipop 5.1.1?
Я использую Xamarin Forms 2.3.4.231, Prism.Forms 6.3 и Prism.Unity.Forms 6.3.