2013-03-03 3 views
2

Я использую:Раздвижная UIViewController влево/вправо

ViewController = [[ViewControllerClass alloc] initWithNibName:@"ViewControllerClass" bundle:[NSBundle mainBundle]]; 
self.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; 
[self presentViewController:frontViewController animated:YES completion:nil]; 

Я пытаюсь сдвинуть UIViewController влево, но я не знаю, почему это не работает. Я даже пытаюсь:

UIModalTransitionStyleCrossDissolve 

который не работает. Пожалуйста, предложите, как я могу реализовать слайд UIViewController влево/вправо.

ответ

7

Когда вы вызываете presentViewController:animated:completion:, это представляет собой контроллер модального представления над верхней частью текущего. Переходом по умолчанию для этого является сдвиг контроллера вида вверх. Существует четыре возможных перехода, как определено перечислением UIModalTransitionStyle.

Модальные переходы не поддерживают переход влево/вправо.

Переход налево/вправо является стандартным переходом при использовании UINavigationController и его pushViewController:animated: и различных методов pop....

[self.navigationController pushViewController:viewController animated:YES]; 

Чтобы закрыть верхний контроллер представления вы делаете:

[self.navigationController popViewControllerAnimated:YES]; 
+0

Благодаря Мэдди, какие изменения я должен сделать сейчас? – iscavengers

+0

Если вы хотите модальный переход, выберите один из четырех типов перехода. Примите тот факт, что вы не получаете влево/вправо как один из вариантов. Если использование модальной презентации не является тем, что вам нужно/нужно, используйте «UINavigationController» и используйте «pushViewController: animated:», чтобы добавить дополнительный контроллер представления. – rmaddy

+0

превосходный описание, спасибо. – Fattie