2010-02-04 4 views
0

Je cherche un moyen de présenter une vue modale animée, et de faire en sorte que la vue modale actuelle présente le nouveau dans l'animation, mais en arrière-plan abandonne l'ancienne vue modale (le nouveau modal devrait avoir le même parent comme l'ancien). La présentation de l'un sur l'autre n'est pas une option car il existe un nombre arbitraire de vues. Ce n'est pas une hiérarchie, pensez-y comme des cartes flash.Comment puis-je présenter une vue modale et me débarrasser d'une autre en même temps?

Merci pour toute aide.

Répondre

0

Vous ne voulez probablement pas utiliser les contrôleurs de vue pour cela, mais les blocs d'animation UIView. Jetez un oeil à + [UIView beginAnimations: context:] dans le UIView docs.

+1

Je suis vaguement familier avec beginAnimations: context: mais je ne suis pas en train de faire la connexion sur la façon dont je ferais tourner quelque chose en utilisant ceci. Je pensais que c'était seulement disponible en vue d'une transition? –

+0

Nouveau code basé sur ceci: [UIView beginAnimations: @ "FlipAndGetNew" context: nil]; [UIView setAnimationTransition: UIViewAnimationTransitionFlipFromRight forView: cache self.firstSubview: NO]; [firstSubview removeFromSuperview]; [UIView commitAnimations]; Malheureusement, la vue disparaît plutôt que de s'animer ... il manque toujours quelque chose. –

+0

Vous devrez effectuer le removeFromSuperview dans la routine d'achèvement de l'animation. Pas à l'intérieur du bloc d'animation. –

Questions connexes