2014-02-17 4 views
-1

Итак, прямо сейчас, на моей Main.storyboard, у меня есть контроллер просмотра, который мы будем называть «S B View Controller». Я добавил еще один контроллер вида, который называется «View Controller». Как это сделать, чтобы пользователь нажал кнопку, он перейдет от контроллера S B View к View Controller? Или это не так, как я должен был что-то вроде этого?Как переключаться между контроллерами просмотра

Извините, если вы этого не поняли; просто скажите мне, если вы не


Заранее спасибо.

+4

Есть много вопросов о переполнении стека, онлайн-уроки и другие ресурсы, уже доступные для этого вопроса. Пожалуйста, тщательно изучите, прежде чем задавать новый вопрос о переполнении стека. Вот подсказка: вам нужны раскадровки. – hgwhittle

+0

Пожалуйста, обратитесь к [официальной документации] (https://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/Introduction/Introduction.html) и тщательно изучите. Это вопрос, заданный несколько раз раньше. – n00bProgrammer

ответ

1

Что я обычно делаю, так это.

Настройте кнопку в ViewController, а затем Control-Drag, и она создаст синюю гибкую стрелку и отбросит ее на вид, который я хочу открыть при нажатии. enter image description here

Затем появляется небольшое всплывающее меню и выбирается модальное.

Тогда я создам еще одну кнопку в другом представлении, в котором вернется исходный вид. Например, «Готово» отклонит представление после.

Вот код Отклонить:

- (IBAction)done:(id)sender { 

[self dismissViewControllerAnimated:YES completion:nil]; 

    } 

Что будет увольнять View, который, кстати, второй View.

Это то, что вам нужно?

0

Скажем, у вас есть SwitchViewController, то две другие точки зрения, позволяет называть эти BlueViewController и YellowViewController.

Затем можно использовать следующие действия при нажатии кнопки: ваш - (IBAction) switchViews { [UIView beginAnimations: @ "Просмотр Флип" контексте: NULL]; [UIView setAnimationDuration: 1.4]; [UIView setAnimationCurve: UIViewAnimationCurveEaseInOut];

if(!self.yellowViewController.view.superview) { 
    if(!self.yellowViewController){ 
     self.yellowViewController = [self.storyboard  instantiateViewControllerWithIdentifier:@"Yellow"]; 
    } 
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.view cache:NO]; 
    [self.blueViewController.view removeFromSuperview]; 
    [self.view insertSubview:self.yellowViewController.view atIndex:0]; 
} else { 
    if(!self.blueViewController){ 
     self.blueViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"Blue"]; 
    } 
    [UIView setAnimationDuration:0.2]; 
    [UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:self.view cache:1]; 
    [self.yellowViewController.view removeFromSuperview]; 
    [self.view insertSubview:self.blueViewController.view atIndex:0]; 
} 
[UIView commitAnimations]; 
} 

Должно быть довольно понятно. Если возникнут какие-либо вопросы, давайте услышим.

Смежные вопросы