Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Jakie są główne różnice między MVXandroidViewPresenter i MvxformsDroidPagePresenter


Jakie są główne różnice między MVXandroidViewPresenter i MvxformsDroidPagePresenter


Zarówno MVXandroidViewPresenter i MvxformsDroidPagePresenter są używane w MVVMCROSS do aplikacji na Androida, ale służą różnym celom i są zaprojektowane do obsługi różnych rodzajów widoków.

MvxandroidviewPresenter

- Cel: Ten prezenter jest częścią frameworka MVVMCROSS i jest specjalnie zaprojektowany do obsługi natywnych widoków na Androida. Obsługuje różne wzorce nawigacyjne, takie jak działania, fragmenty, zagnieżdżone fragmenty, fragmenty dialogowe i bardziej złożone układy, takie jak NavigationDrawer i BottomnavigationBar [3] [6].
- Funkcjonalność: Działa jako pomost między ViewModels i Native Android View, umożliwiając dostosowanie atrybutów prezentacji. Deweloperzy mogą rozszerzyć tego prezentera w celu wdrożenia niestandardowych strategii nawigacyjnych poprzez zastępowanie jego metod lub dodanie nowych atrybutów prezentacji [3] [6].
- Zastosowanie: zwykle stosowane w czystej aplikacjach Android MVVMCROSS, w których preferowane są natywne widoki na stronach Xamarin.Forms.

MvxformsDroidPagePresenter

- Cel: Ten prezenter jest używany w aplikacjach MVVMCROSS, które integrują strony Xamarin.Forms. Został zaprojektowany do obsługi prezentacji stron Xamarin.Forms w aplikacji na Androida [5] [8].
- Funkcjonalność: Działa poprzez konwersję Xamarin.Forms Strate w rodzime widoki na Androida i zarządzanie ich cyklem życia. Jest mniej elastyczny niż MvxandroidviewPresenter pod względem natywnych wzorców nawigacji na Androida, ale jest niezbędny do integracji Xamarin.Forms z projektami MVVMCROSS Android [5] [8].
- Zastosowanie: Zastosowane w aplikacjach hybrydowych, w których zarówno natywne widoki na Androida, jak i Xamarin.Forms Strony współistnieją. Wymaga to wdrożenia niestandardowej logiki do obsługi nawigacji między stronami Xamarin.Forms i natywnymi widokami, ponieważ nie obsługuje bezpośrednio wszystkich natywnych funkcji nawigacji Androida [5] [8].

Podsumowując, MVXandroidviewPresenter jest idealny do aplikacji z wykorzystaniem natywnych widoków na Androida, oferując obszerne dostosowywanie i obsługę różnych wzorców nawigacji specyficznych dla Androida. W przeciwieństwie do tego, MVXFormSdroidPagePresenter jest używany podczas integracji Xamarin.Forms Pages do aplikacji na Androida MVVMCROSS, zapewniając sposób wyświetlania formularzy jako widok natywnych, ale z ograniczonymi możliwościami nawigacji natywnej.

Cytaty:
[1] https://michaelridland.com/category/xamarin/page/3/
[2] https://stackoverflow.com/questions/35912706/mvvmcross-hybrid-xamarin-porms-and-android-activity-application
[3] https://www.mvvmcross.com/documentation/platform/android/android-view-presenter
[4] https://ridland2.rssing.com/chan-57660607/all_p1.html
[5] https://michaelridland.com/xamarin/mixing-xamarin-porms-mvvmcross-nativeviews/
[6] https://www.mvvmcross.com/documentation/fundamentals/view-presenters
[7] https://jesejiang.wordpress.com
[8] https://stackaverflow.com/questions/38181508/login-page-with-xamarin-mvvmcross-porms-preventing-back-navigation-on-android