Domanda

posso "curl" un controller di vista con questo codice:

[UIView beginAnimations:@"animation" context:nil];
[self.navigationController pushViewController:page animated:NO];
[UIView setAnimationDuration:1];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.navigationController.view cache:NO]; 
[UIView commitAnimations];

, ma non riesco a riccio verso il basso l'ultima pagina come questa:

[UIView beginAnimations:@"animation" context:nil];
[self.navigationController popViewControllerAnimated:NO];
[UIView setAnimationDuration:1];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:self.navigationController.view cache:NO]; 
[UIView commitAnimations];

idea del perché no? Voglio solo davvero "reverse" l'animazione (come se un adesivo è stata staccata per mostrare il 'controller della vista push'ed e di nuovo bloccato su quando si fa clic su un pulsante).

Grazie

È stato utile?

Soluzione

Ok, la mia risposta vecchio era completamente sbagliato ... il problema è che si stanno spuntando il controller della vista prima di impostare la visualizzazione di transizione. Se si modifica il codice a questo:

[UIView beginAnimations:@"animation" context:nil];
[UIView setAnimationDuration:1];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:self.navigationController.view cache:NO]; 
[self.navigationController popViewControllerAnimated:NO];
[UIView commitAnimations];

funziona bene

Altri suggerimenti

Usando OpenGL o un sacco di processi complessi Core Animation, sono sicuro che si potrebbe, ma, sarebbe un sacco di problemi per fare una cosa del genere. Qualcosa che potrebbe aiutare a lungo: Un libro semplice rotazione richiesta scritta interamente con Core Animation

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top