iOS7 - 搜索结果 tableview 下推 20px
Posted
技术标签:
【中文标题】iOS7 - 搜索结果 tableview 下推 20px【英文标题】:iOS7 - Search results tableview pushed 20px down 【发布时间】:2013-09-23 13:05:45 【问题描述】:我所有的搜索结果表格视图都偏移了大约 20-30 像素。我所有的视图控制器都是手工编码的,所以没有故事板或 xib。我试过了:
在 info.plist 中设置Status bar is initially hidden
设置self.wantsFullScreenLayout = true
设置self.edgesForExtendedLayout = UIRectEdgeNone;
设置self.automaticallyAdjustsScrollViewInsets = false;
将搜索结果 tableview 的框架设置为 -20 的 Y 原点
这些都不起作用。相反,每个搜索结果表视图显示为:
有什么解决方法吗?有什么我可以设置的吗?我试过我检查了搜索结果 tableview 框架,它的 Y 原点为 0。
【问题讨论】:
我遇到了同样的问题并找到了一个所谓的解决方案,但它在您的 tableView 和聚光灯之间留下了空间。解决方案是将 tableView 的高度降低 20 并将 y 值增加 20。 我解决了我的问题。你用过uicontrol吗 【参考方案1】:添加这一行:
self.automaticallyAdjustsScrollViewInsets = false;
检查developer forum可能对你有帮助
【讨论】:
对不起,我忘了提及我也尝试过,但没有运气。结果相同【参考方案2】:测试设备是否运行 ios 7 并将 viewDidload
中的视图框架向上调整 20 像素。我的表格视图遇到了这个问题,并按如下方式进行了修复:
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7)
CGRect frame = self.myTable.frame;
frame.origin.y -= 20;
self.myTable.frame = frame;
【讨论】:
【参考方案3】:我让它工作了:
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
【讨论】:
以上是关于iOS7 - 搜索结果 tableview 下推 20px的主要内容,如果未能解决你的问题,请参考以下文章
UISearchDisplayController / ISearchResult TableView 在每个搜索中添加额外的行? IOS 7