iOS7 - 搜索结果tableview推了20px

时间:2013-09-23 13:05:46

标签: ios objective-c uitableview ios7

我的所有搜索结果表格视图都偏移了大约20-30px。我的所有视图控制器都是手动编码的,因此没有故事板或xib。我试过了:

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

这些都不起作用。相反,每个搜索结果tableview都显示为:enter image description here enter image description here

有任何变通方法吗?有什么我可以设置的吗?我试过检查了搜索结果tableview框架,它的Y原点为0.

3 个答案:

答案 0 :(得分:3)

添加以下行:

self.automaticallyAdjustsScrollViewInsets = false;

检查developer forum可能对您有所帮助

答案 1 :(得分:0)

测试设备是否在运行iOS 7,并在viewDidload中将视图的帧调整为20px。我的表视图出现了这个问题并按如下方式修复:

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7)
{
    CGRect frame = self.myTable.frame;
    frame.origin.y -= 20;
    self.myTable.frame = frame;
}

答案 2 :(得分: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