通过点击键盘上的搜索触发segue

时间:2012-11-03 14:38:46

标签: ios keyboard uistoryboard segue

我有一个应用程序,我希望用户点击文本字段,输入他们的搜索查询,然后点击键盘的Return(或这里,搜索)按钮。这样做应该触发segue,并将prepareForSegue方法中的一些数据发送到下一个控制器。

这个方法目前正由UIButton触发,它工作正常,但我想在键盘上点击搜索时发生完全相同的事情,所以我可以删除按钮并简化流程。

我尝试在代理的[self prepareForSegue]方法中调用textFieldShouldReturn,但它没有用。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString: @"DisplaySearchResults"]) {
        SearchResultsViewController *searchResultsViewController = [segue destinationViewController];
        searchResultsViewController.searchQuery = _searchQuery;
    }
}

1 个答案:

答案 0 :(得分:4)

你应该致电

[self performSegueWithIdentifier:@"DisplaySearchResults" sender:self];
textFieldShouldReturn中的

在performSegueWithIdentifier之后将自动调用prepareForSegue。