搜索结果UISearchDisplayController具有其他单元格布局和行为,而不是搜索表格

Shi*_*goo 6 cocoa-touch objective-c uitableview ios uistoryboard

我正在使用故事板.我有一个带有一个原型单元的UITableView.这个单元格的风格是"副标题".我已经从细胞中添加了一个segue到详细视图.因此,当用户点击一个单元格时,它将打开相应的编辑器......这一切都很有效.

现在我添加了一个UISearchDisplayController和一个UISearchBar,实现了委托.这非常有效.

但是在搜索结果表中,单元格的格式为"默认",并且不可点击.我需要做些什么才能使结果表看起来像"未搜索"表一样?

小智 24

我想为答案#1做出贡献这就是我所做的,它对我有用

在方法中

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
Run Code Online (Sandbox Code Playgroud)

而不是从参数tableView中分配单元格

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
Run Code Online (Sandbox Code Playgroud)

直接从视图上的TableView分配它,所以你必须替换它

// UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
Run Code Online (Sandbox Code Playgroud)

有了这个

 UITableViewCell *cell = [self.tableView dequeueReusableCellWithIdentifier:CellIdentifier];
Run Code Online (Sandbox Code Playgroud)


Shi*_*goo 8

发现问题......

方法

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
Run Code Online (Sandbox Code Playgroud)

从tableView中拉出单元格,在结果案例中,不是来自storyboard的tableView,而是来自SearchDisplayController的resultTableView.

我现在从故事板中的表视图中获取要在两种情况下显示的单元格,现在它可以工作.