2010-07-22 5 views
2

Actuellement, je montre un contrôleur de vue modale pour certaines informations.Comment associer l'animation curl de la page entière à modalviewcontroller?

Je souhaite afficher ou masquer le contrôleur de vue modale avec animation de boucle pleine page.

Actuellement, je montre ce contrôleur de vue modale depuis l'un des contrôleurs de vue du contrôleur de la barre d'onglets.

J'ai l'option partialpagecurl dans la propriété modalTransitionStyle du modalviewcontroller à afficher.

Code actuel:

InfoViewController *infoViewController = [[InfoViewController alloc] initWithNibName:@"InfoViewController" bundle:[NSBundle mainBundle]]; 

    //infoViewController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 



    [self presentModalViewController:infoViewController animated:YES]; 

    [infoViewController release]; 

Alors, comment puis-je associer une transition boucle pleine page ou une animation avec un modalviewcontroller.

Merci.

Répondre

2
[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES]; 
[UIView setAnimationDuration:0.5]; 
[UIView commitAnimations]; 
+0

Je suis au courant de cet extrait, mais je ne sais pas où le mettre. – harshalb

+0

Cet extrait donné par @ohho est très utile, mais il serait bon d'en savoir plus sur comment l'utiliser pour les transitions entre view controllers. –

1

Conserver le code suivant dans viewDidAppear et viewWillDisappear appels dans le contrôleur de vue que vous souhaitez présenter sous forme modale

[UIView transitionWithView:self.view.window 
        duration:1.0 
        options:UIViewAnimationOptionTransitionCurlUp 
       animations:^(void) { 

       } 
       completion:^(BOOL finished) { 
        if (true == finished) { 

        } 

       }]; 

Vous pouvez garder un drapeau supplémentaire en classe viewcontroller afin que vous puissiez activer/désactiver le curl de la page selon les besoins.

Questions connexes