MVVMCROSS -is asuv `mvxFormsDroidPagePresenter` on loodud käitlema Xamarin.Forms lehtede navigeerimiseks Androidi rakenduses. Kuid mittevormide kõnedega tegelemisel, näiteks natiivsete Androidi tegevustega seotud tegevustega, suunab see need kõned MVXandroidViewPresenter '. See võimaldab rakendusel sujuvalt navigeerida Xamarin.Forms lehtede ja looduslike Androidi vaatamiste vahel.
Siin on üksikasjalik seletus selle kohta, kuidas `mvxformSdroidPagePresenter` ei tegele mittevormide kõnedega:
1. Mittevormide ümbersuunamine: kui esitatakse päringut vaade, mis ei ole Xamarin.formsi leht (nt looduslik Androidi tegevus), suunab `mVXFormSDROIDPAGEPAGEPENTER` selle päringu ümber` mVXandroidViewPreSenter`. See saatejuht vastutab looduslike Androidi vaatamiste esitlusloogika käitlemise eest.
2. Rakendamine: selle ümbersuunamise saavutamiseks peate looma kohandatud saatejuhi, mis laiendab `mvxformSdroidPagePreSenter`. Selles kohandatud saatejuhis saate alistada meetodi "Show", et kontrollida, kas vaatemudeli taotlus on Xamarin.Forms View või Natilise Androidi vaade. Kui see on mõeldud loodusliku vaate jaoks, saate esitluse käsitlemiseks kasutada `mvxandroidviewpresenter`.
3. ViewModeli liides: üks lähenemisviis Xamarin.Forms ja Natural Android View mudelite eristamiseks on määratleda liidese nagu "ixfviewModel", mida rakendavad kõik XaMarin.Forms View mudelid. Kohandatud saatejuhis saate kontrollida, kas vaatemudel seda liidest rakendab. Kui see juhtub, käsitlete seda vormide vaatena; Vastasel juhul kasutate `mvxandroidviewpresenter`.
4. Registreerimine: oma kohandatud saatejuhi kasutamiseks peate oma MVVMcrossi seadistusklassis alistama meetodi `CreateViewPresenter`. See meetod peaks tagastama teie kohandatud saatejuhi eksemplari, tagades, et seda kasutatakse kõigi vaateesitluste jaoks.
5. Elutsükli juhtimine: Natiivsete Androidi vaatamiste korral peate haldama ka tegevuse elutsüklit, rakendades `imvxandroidcurrenttoPactivity` ja` imvxandroidAcityLityLifetimeListener`. See tagab, et MVVMCross on teadlik praegusest tipptegevusest ning suudab navigeerimise ja elutsükli sündmustega korralikult hakkama.
Neid samme järgides saate tõhusalt hakkama nii Xamarin.Forms kui ka looduslike Androidi vaadetega samas rakenduses, kasutades MVVMcrossi.
Tsitaadid:]
]
[3] https://github.com/mvvmcross/mvvmcross/issues/2802
]
]
[6] https://xamarin97.rssing.com/chan-50656755/article24666.html
[7] https://xamarin91.rssing.com/chan-50628054/all_p539.html
]
]
[10] https://help.smartsuite.com/en/articles/6267415-form-view
]
[12] https://ridland2.rssing.com/chan-57660607/all_p1.html