2013-10-24 5 views
0

Я использую Xcode 4.6 с раскадровки.Как сделать «действие segue modal» в коде?

В моей раскадровке у меня есть пара UIViewControllers и с нажатием кнопки я хочу перейти от ViewController к другому. Я сделал это, добавив «Round Rect Button», управляя щелчком по нему и перетаскивая его в ViewController. Я хочу перейти к нажатию кнопки и выбрать «Action segue: modal».

Это работает отлично! Но мне нужно иметь возможность делать то же самое в коде.

Заранее благодарим за ответы!

ответ

1

Вместо того, чтобы перетаскивать из кнопки в пункт назначения VC, вы создаете новый modg от Ctrl-dragging от источника VC до пункта назначения VC, назовите идентификатор. В вашем коде предположим, что у вас есть UIButton с именем mybtn. Вы можете сделать следующий шаг:

в viewDidLoad

[mybtn addTarget:self action:@selector(btnclicked:) forControlEvents:UIControlEventTouchUpInside]; 

в btnclicked метод:

- (void)btnclicked:(UIButton *)sender { 
    [self performSegueWithIdentifier:@"your_segue_identifier_name" sender:self]; 
} 

наконец, вы можете настроить ваши данные, если вы хотите передать объект между ВК используя следующий метод делегата. Если вы просто просто перейдете в пункт назначения VC, вы можете опустить его:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { 
    if ([segue.identifier isEqual:@"your_segue_identifier_name"]) { 
     // Do your stuff here 
    } 
} 
Смежные вопросы