Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kokie yra pagrindiniai skirtumai tarp „mVxandroidviewPresenter“ ir „mvxFormsDroidPagePresenter“


Kokie yra pagrindiniai skirtumai tarp „mVxandroidviewPresenter“ ir „mvxFormsDroidPagePresenter“


„MVXandroidViewPresenter“ ir „MvxFormsDroidPagePresenter“ yra naudojami „MVVMCross“ „Android“ programoms, tačiau jie tarnauja skirtingiems tikslams ir yra skirti tvarkyti skirtingų tipų rodinius.

mvxandroidviewPresenter

- Tikslas: Šis laidos vedėjas yra „MVVMCross“ sistemos dalis ir yra specialiai sukurtas vietiniams „Android“ vaizdams tvarkyti. Tai palaiko įvairius navigacijos modelius, tokius kaip veikla, fragmentai, įdėti fragmentai, dialogo fragmentai ir sudėtingesni išdėstymai, tokie kaip „NavigationDrawer“ ir „BottomNavigationbar“ [3] [6].
- Funkcionalumas: jis veikia kaip tiltas tarp „ViewModels“ ir „Native Android“ rodinių, leidžiančių pritaikyti pateikimo atributus. Kūrėjai gali išplėsti šį laidos vedėją, kad įgyvendintų pasirinktines navigacijos strategijas, pervertindami jo metodus arba pridėdami naujus pateikimo atributus [3] [6].
- Naudojimas: Paprastai naudojamas grynose „MVVMCross Android“ programose, kur pirmenybė teikiama vietiniams vaizdams, palyginti su „Xamarin.Forms“ puslapiais.

mvxFormsDroidPagePresenter

- Tikslas: Šis laidos vedėjas naudojamas „MVVMCross“ programose, integruojančiose „Xamarin.Forms“ puslapius. Jis skirtas tvarkyti „Xamarin.Forms“ puslapių pristatymą „Android“ programoje [5] [8].
- Funkcionalumas: jis veikia konvertuodamas „Xamarin.Forms“ puslapius į vietinius „Android“ rodinius ir valdant jų gyvenimo ciklą. Jis yra mažiau lankstus nei „MvxandroidViewPresenter“, atsižvelgiant į natūralius „Android“ navigacijos modelius, tačiau yra būtinas norint integruoti „Xamarin.Forms“ į „Mvvmcross Android“ projektus [5] [8].
- Naudojimas: naudojamas hibridinėse programose, kuriose kartu egzistuoja ir vietiniai „Android Views“, ir „Xamarin.Forms“ puslapiai. Norint tvarkyti navigaciją tarp „Xamarin.Forms“ puslapių ir vietinių rodinių, reikia įdiegti pasirinktinę logiką, nes ji tiesiogiai nepalaiko visų natūralių „Android“ naršymo funkcijų [5] [8].

Apibendrinant galima pasakyti, kad „MvxandroidViewPresenter“ yra idealus programoms, naudojančioms vietinius „Android“ rodinius, siūlant išsamų pritaikymą ir palaikymą įvairiems „Android“ specifinių navigacijos modeliams. Priešingai, integruojant „Xamarin.Forms“ puslapius į „MVVMCross Android“ programą naudojamas „MVXFormSDROidPagePresenter“, priešingai, pateikiant būdą, kaip formuoti puslapius kaip vietinius vaizdus, ​​tačiau su ribotomis vietinėmis navigacijos galimybėmis.

Citatos:
[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://jesesejang.wordpress.com
[8] https://stackoverflow.com/questions/38181508/login-page-with-xamarin-mvvmcross-forms-preventing-back-navigation-on Android