在UISearchDisplayController期间执行didSelectRowAtIndexPath

时间:2012-11-10 14:35:10

标签: iphone uisearchdisplaycontroller didselectrowatindexpath

我有一个包含UIImageView和UISearchDisplayController的UIScrollView。当用户点击图像时,出现搜索显示控制器。我正在根据搜索文本过滤列表,并且正确更新了与UISearchDisplayController关联的表。当用户点击表格中的一行时,我收到了didSelectRowAtIndexPath。这就是 的工作原理。 (我使用this tutorial来帮助我实现UISearchDisplayController。)

但是,我无法弄清楚如何(a)从didSelectRowAtIndexPath中删除UISearchDisplayController(即搜索框和表),以及(b)如何将有关所选行的信息传递给UIScrollView。 / p>

感谢。

1 个答案:

答案 0 :(得分:3)

A)您应该可以使用以下内容解除UISearchDisplay控制器:

[searchDisplayController setActive:NO animated:YES];

B)我假设您正在启动一个新的视图控制器来显示有关所选行的信息?如果是这样,请执行以下操作:

MyViewController *viewController = [[MyViewController alloc] initWithNibName:@"myNibName" bundle:nil];
MyObject *object = [allObjects objectAtIndex:indexPath.row];

// pass object to view controller's "object" property
viewController.object = object;

[self.navigationController pushViewController:viewController animated:YES];

很抱歉,如果没有任何语法,请不要输入xcode。