2017-10-11 15 views
0

J'ai une application MvvmCross ciblant Android et iOS. J'ai utilisé le modèle disponible sur VS Marketplace. Pour une raison quelconque, il semble que le ViewAppeared de mon modèle de vue ne soit jamais invoqué sur Android, bien que je puisse voir que le constructeur du modèle de vue est exécuté. En outre, la page correspondante au modèle de vue est construite. Sur mon application iOS, cela fonctionne très bien. Où devrais-je regarder?ViewAppeared pas appelé sur Android, mais sur iOS

+0

Pouvez-vous nous montrer du code? Il serait certainement utile de savoir à partir de quel type votre vue hérite. – nmilcoff

Répondre

0

Assurez-vous que votre vue hérite de MvxActivity ou MvxFragment (au cas où vous utilisez des fragments). Ceci est requis pour les événements de durée de vie de la vue à déclencher. Assurez-vous également d'utiliser NavigationService pour naviguer entre les vues. See view model lifetime documentation pour plus de détails.

+1

Ma vue hérite de 'MvxContentPage '. J'ai creusé un peu plus loin en faisant quelques repros, et j'ai trouvé que la mise à jour des paquets NuGet dans la solution provoquait cela. J'ai essayé de revenir à MvvmCross 5.1.1 (de 5.2 qui était la version cible après la mise à jour des paquets NuGet), mais cela n'a pas aidé. Donc, je suppose que d'autres mises à jour ont causé la mise en œuvre d'Android pour faire faillite, tandis que la mise en œuvre iOS fonctionne bien. Je suis toujours confus quant à l'endroit où regarder. – user3160335

+0

C'est très inhabituel. Je suggère de signaler le problème à MvvmCross GitHub repo –