3

我所有的搜索结果表格视图都偏移了大约 20-30 像素。我所有的视图控制器都是手工编码的,所以没有故事板或 xib。我努力了:

  • Status bar is initially hidden在 info.plist 中设置
  • 环境self.wantsFullScreenLayout = true
  • 环境self.edgesForExtendedLayout = UIRectEdgeNone;
  • 环境self.automaticallyAdjustsScrollViewInsets = false;
  • 将搜索结果 tableview 的框架设置为 -20 的 Y 原点

这些都不起作用。相反,每个搜索结果表视图显示如下:在此处输入图像描述 在此处输入图像描述

有什么解决方法吗?有什么我可以设置的吗?我试过我检查了搜索结果表格视图框架,它的 Y 原点为 0。

4

3 回答 3

3

添加这一行:

self.automaticallyAdjustsScrollViewInsets = false;

检查开发者论坛可能对您有帮助

于 2013-09-23T13:19:16.160 回答
0

测试设备是否运行 iOS 7 并将您的视图框架调整为 20 像素viewDidload。我的表格视图遇到了这个问题,并将其修复如下:

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7)
{
    CGRect frame = self.myTable.frame;
    frame.origin.y -= 20;
    self.myTable.frame = frame;
}
于 2013-10-24T03:25:25.073 回答
0

我使它与这个一起工作:

if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0")) {
    CGRect frame = self.searchDisplayController.searchResultsTableView.frame;
    frame.origin.y = -20;
    self.searchDisplayController.searchResultsTableView.frame = frame;
}

放到这个方法里

- (BOOL)searchDisplayController:(UISearchDisplayController *)controller shouldReloadTableForSearchString:(NSString *)searchString
于 2013-12-05T09:26:59.803 回答