PresentModalViewController или addubview? - PullRequest
5 голосов
/ 04 июля 2010

Привет, я пишу приложение в xcode 3.2.3. Все, что я хочу сделать, - это переключиться на другую точку зрения, но я не уверен, что это лучший способ сделать это. Я могу сделать это любым из этих двух способов ...

PreferencesViewController *screen = [[PreferencesViewController alloc]initWithNibName:nil bundle:nil];

screen.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;

[self presentModalViewController:screen animated:YES];

[screen release];

или используя ...

PreferencesViewController *screen = [[PreferencesViewController alloc]initWithNibName:nil bundle:nil];

[UIView beginAnimations:nil context:NULL];

[UIView setAnimationDuration:1.0];

[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.view cache:YES];

[self.view addSubview:screen.view]; 

[UIView commitAnimations];

У меня есть некоторые проблемы с обоими этими методами. Если я использую presentModalViewController и имитирую предупреждение о памяти в PreferencesViewController, мое приложение падает. Это не относится ко второму способу. Второй метод, однако, делает мои кнопки выглядящими странно во время анимации переключения.

Может кто-нибудь сказать мне, что не так и / или посоветовать мне, какой метод правильный .

Спасибо

Ответы [ 2 ]

0 голосов
/ 13 мая 2013

PresentModalViewController: -

YourViewController *vC = [YourViewController alloc]initWithNibName:@"YourViewController" bundle:nil];
vc.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:vC animated:YES];
[vC release];

Это нормально работает для меня

Попробуйте этот код. Все лучшее

0 голосов
/ 03 августа 2012

Вы можете попытаться сделать это, не забудьте выпустить:

[self.navigationController pushViewController:[[YourViewController alloc]    initWithNibName:nil bundle:nil] animated:YES];   
...