Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon ¿Cuáles son las principales diferencias entre mvxandroidViewPresenter y MVXFormsDroidPagePresenter


¿Cuáles son las principales diferencias entre mvxandroidViewPresenter y MVXFormsDroidPagePresenter


El MVXANDROIDVIEWPresenter y MVXFormSDroidPagePresenter se usan en MVVMCross para aplicaciones de Android, pero tienen diferentes propósitos y están diseñados para manejar diferentes tipos de vistas.

mvxandroidViewPresenter

- Propósito: este presentador es parte del marco MVVMCross y está específicamente diseñado para manejar las vistas nativas de Android. Admite varios patrones de navegación, como actividades, fragmentos, fragmentos anidados, fragmentos de diálogo y diseños más complejos como navegación y parte inferior de la barra [3] [6].
- Funcionalidad: actúa como un puente entre los modelos de vista y las vistas nativas de Android, lo que permite la personalización de los atributos de presentación. Los desarrolladores pueden extender este presentador para implementar estrategias de navegación personalizadas anulando sus métodos o agregando nuevos atributos de presentación [3] [6].
- Uso: típicamente utilizado en aplicaciones de Android MVVMCross puras donde se prefieren las vistas nativas en las páginas de Xamarin.Forms.

MVXFormSDroidPagePresenter

- Propósito: este presentador se utiliza en aplicaciones MVVMCross que integran las páginas de Xamarin.Forms. Está diseñado para manejar la presentación de las páginas de Xamarin.forms dentro de una aplicación Android [5] [8].
- Funcionalidad: funciona convirtiendo las páginas de Xamarin.formas en vistas nativas de Android y administrando su ciclo de vida. Es menos flexible que MVXANDROIDVIEWPRESENTER en términos de patrones de navegación de Android nativos, pero es esencial para integrar xamarin. Forma en proyectos MVVMCross Android [5] [8].
- Uso: utilizado en aplicaciones híbridas donde coexisten las páginas nativas de Android y las páginas de Xamarin.Forms. Requiere implementar la lógica personalizada para manejar la navegación entre las páginas de Xamarin.forms y las vistas nativas, ya que no admite directamente todas las características nativas de navegación de Android [5] [8].

En resumen, MVXANDROIDVIEWPRESENTER es ideal para aplicaciones que utilizan vistas nativas de Android, ofreciendo una amplia personalización y soporte para varios patrones de navegación específicos de Android. En contraste, MVXFormSDroidPagePresenter se usa al integrar las páginas de Xamarin.Forms en una aplicación MVVMCross Android, proporcionando una forma de mostrar las páginas de formularios como vistas nativas, pero con capacidades de navegación nativas limitadas.

Citas:
[1] https://michaelridland.com/category/xamarin/page/3/
[2] https://stackoverflow.com/questions/35912706/mvvmcross-hybrid-xamarin-forms-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-forms-mvvmcross-nativeviews/
[6] https://www.mvvmcross.com/documentation/fundamentals/view-presenters
[7] https://jessejiang.wordpress.com
[8] https://stackoverflow.com/questions/38181508/login-page-with-xamarin-mvvvmcross-forms-preventing-back-navigation-on-android