我有适用于iOS7及以下版本的应用程序
我使用UISearchDisplayController在表中进行搜索。

问题:
搜索后的标题 View 在iOS8中不显示。
如下图所示。

搜索之前:

搜索后:

我尝试使用UISearchController但也有同样的问题
我用了这个代码link

我在TPSMastreViewController.m中添加以下代码

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    UIView *v = [[UIView alloc] init];
    v.backgroundColor = [UIColor greenColor];
    return v;
}

我检查了那个委托(delegate)-(UIView *)tableView:(UITableView *)tableView
viewForHeaderInSection:(NSInteger)节
在iOS8中不会被调用。
编辑:
我了解的只是调用了UITableViewDataSource委托(delegate),没有调用UITableViewDelegate。请不要在ViewDidLoad中同时设置两个委托(delegate)

问题:
1]这是UI更改吗?
2]任何人都有补丁,以便可以强制调用委托(delegate)方法。

最佳答案

我找到了答案,所以在这里写可以帮助其他面临相同问题的人

只需添加委托(delegate)人heightForHeaderInSection,它将显示UISearchController(iOS8)的searchResultsController和UISearchDisplayController(iOS7)的searchResultsTableView的 header View

在TPSMastreViewController.m中添加以下代码,它将解决问题。

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
    return 20;
}

我通过阅读这个问题找到了答案:)
in iOS 8 UITableView heightForHeaderInSection is not optional

关于ios8 - 搜索iOS8 + XCode6后不显示标题 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25647059/

10-12 17:24