Могу ли я «свернуть» страницу на popViewControllerAnimated? - PullRequest
2 голосов
/ 13 сентября 2010

Я могу «свернуть» контроллер вида с помощью этого кода:

[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];

, но я не могу свернуть последнюю страницу следующим образом:

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

Любая идея, почемуне?Я просто очень хочу «перевернуть» анимацию (как если бы стикер был снят, чтобы показать контроллер представления «нажал», и снова нажал на кнопку, когда они нажимают кнопку).

Спасибо

Ответы [ 2 ]

4 голосов
/ 13 сентября 2010

Хорошо, мой старый ответ был полностью неверным ... проблема в том, что вы подключаете контроллер представления перед установкой переходного вида. Если вы измените код на это:

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

отлично работает

1 голос
/ 13 сентября 2010

Используя OpenGL или множество сложных процессов CoreAnimation, я уверен, что вы могли бы, но, было бы много хлопот, чтобы сделать что-то подобное. Что-то, что может вам помочь: Простое приложение для переворачивания книг, написанное полностью с CoreAnimation

...