在Push Segue上辞职第一响应者

时间:2014-09-08 22:53:32

标签: ios segue

我有推送segue并希望在视图之间传输数据。如果用户点击导航栏中的下一个按钮,我需要一种不同的方式来辞退第一响应者。我有[textField resignFirstResponder];在导航栏按钮方法中但由于某种原因它在下一页viewDidLoad之后被调用。

- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([segue.identifier isEqualToString:[NSString stringWithFormat:@"thridClubPage"]]) {
    thirdClubPage *nextPage = segue.destinationViewController;

    nextPage.title = self.navigationItem.title;
    nextPage.location = self.collegeString;
    nextPage.people = self.membersString;
    nextPage.leader = self.presidentString;
    nextPage.Email = self.presidentEmailString;
}
}

- (IBAction)finishPage:(id)sender {
[self.presCell.presidentEmail resignFirstResponder];
}

segue在不重新签名textField的情况下执行。

1 个答案:

答案 0 :(得分:0)

快速解决方案是从IB中的按钮中删除segue并在两个视图控制器之间重绘它。 (换句话说,当拖出segue时,不要从按钮控制拖动,从包含它的视图控制器进行控制拖动)。给segue一个标识符,比如@" NextSegue"。

现在你可以通过自己触发segue来控制发生的事情的顺序......

- (IBAction)finishPage:(id)sender {
    [self.presCell.presidentEmail resignFirstResponder];
    [self performSegueWithIdentifier:@"NextSegue" sender:self];
}