MVXandroidViewPresenter ve MVXFormsDroidPePresenter, Android uygulamaları için MVVMCross'ta kullanılır, ancak farklı amaçlara hizmet ederler ve farklı görünüm türlerini ele almak için tasarlanmıştır.
mvxandroidviewpresenter
- Amaç: Bu sunucu MVVMCross çerçevesinin bir parçasıdır ve özel olarak yerel Android görünümlerini işlemek için tasarlanmıştır. Etkinlikler, parçalar, iç içe parçalar, diyalog parçaları ve NavigationDrawer ve BottomNavigationBar gibi daha karmaşık düzenler gibi çeşitli navigasyon modellerini destekler [3] [6].
- İşlevsellik: ViewModels ve yerel Android görünümleri arasında bir köprü görevi görür ve sunum özelliklerinin özelleştirilmesine izin verir. Geliştiriciler, bu sunumcuyu yöntemlerini geçersiz kılarak veya yeni sunum özellikleri ekleyerek özel gezinme stratejileri uygulamak için genişletebilir [3] [6].
- Kullanım: Tipik olarak Xamarin.forms sayfalarında yerel görünümlerin tercih edildiği saf MVVMCross Android uygulamalarında kullanılır.
mvxformsdroidpresenter
- Amaç: Bu sunucu, Xamarin.forms sayfalarını entegre eden MVVMCross uygulamalarında kullanılır. Bir Android uygulamasında Xamarin.forms sayfalarının sunumunu ele almak üzere tasarlanmıştır [5] [8].
- İşlevsellik: Xamarin.forms sayfalarını yerel Android görünümlerine dönüştürerek ve yaşam döngülerini yöneterek çalışır. Yerel Android navigasyon kalıpları açısından MVxandroidViewPresenter'dan daha az esnektir, ancak xamarin.formsları MVVMCross Android projelerine entegre etmek için gereklidir [5] [8].
- Kullanım: Hem Native Android görünümlerinin hem de Xamarin.forms sayfalarının bir arada bulunduğu hibrit uygulamalarda kullanılır. Tüm yerel Android navigasyon özelliklerini doğrudan desteklemediği için Xamarin.forms sayfaları ve yerel görünümler arasında gezinmeyi işlemek için özel mantığın uygulanmasını gerektirir [5] [8].
Özetle, MVXandroidViewPresenter, android'e özgü çeşitli gezinme modelleri için kapsamlı özelleştirme ve destek sunan yerel Android görünümlerini kullanan uygulamalar için idealdir. Buna karşılık, MVXFormsDroidPePresenter, Xamarin.forms sayfalarını bir MVVMCross Android uygulamasına entegre ederken kullanılır ve form sayfalarını yerel görünümler olarak ancak sınırlı yerel gezinme özelliklerine sahip bir yol sağlar.
Alıntılar:[1] https://michaelridland.com/category/xamarin/page/3/
[2] https://stackoverflow.com/questions/35912706/mvvmcross-hybrid-xamarin--android-activity-ppleplication
[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-mvmcross-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-mvmcross-forts-back-navigation-nroid-droid-droid