2011-01-31 5 views
1

Dans mon programme, j'ai la fenêtre principale en arrière-plan qui a une plus petite UIScrollView dessus. J'ai des boutons sur chaque page de la vue de défilement que je veux faire apparaître une vue modale qui peut être dissiliée. Cela fonctionne bien pour la première page, cependant, lorsque je clique sur le bouton sur la deuxième page de la vue déroulante, la vue modale qui apparaît est au-dessus de la première page au lieu de la deuxième et la deuxième page est complètement vide. Quand je ferme la vue modale, la première page a été remplacée par la deuxième page et la deuxième page est laissée en blanc ... Le code J'utilise est:Monotouch UIScrollView et ModalView question

MVC = new NewsModalViewController(this); 

MVC.ModalTransitionStyle = UIModalTransitionStyle.CoverVertical; 

MVC.ModalPresentationStyle = UIModalPresentationStyle.CurrentContext; 

J'ai essayé de jouer avec les cadres mais n'ayant pas de chance ...

Un aperçu?

Vive

Répondre

1

Je réécrivaient les sous-pages pour déclencher un événement que la vue parent écoute. Ensuite, affichez le modal à partir de la vue parent (vous pouvez réellement créer le modal dans la vue enfant et le transmettre à l'événement). Cela élimine tout problème d'application du modal au mauvais contexte.

Il peut y avoir une autre explication, mais c'est la méthode que j'ai implémentée sur quelques applications et qui m'a bien servi. Il semble que les modaux soient affichés uniquement à partir de la vue de niveau supérieur de la pile.