默认隐藏 UITableView 搜索栏

Posted

技术标签:

【中文标题】默认隐藏 UITableView 搜索栏【英文标题】:Hide UITableView search bar by default 【发布时间】:2014-11-25 02:08:23 【问题描述】:

我知道这是一个重复的问题,但我已经尝试了所有搜索的答案,

例如: iPhone: Hide UITableView search bar by default

但是当我尝试这个时:

[self.tableView setContentOffset:CGPointMake(0, 44)];

推到这个视图控制器时,顶部(导航的位置)会闪烁。

因为一开始我的表格单元号是0,所以我不能用这个:

[yourTableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0] atScrollPosition:UITableViewScrollPositionTop animated:NO];

【问题讨论】:

【参考方案1】:

出现闪烁是因为你没有足够的行来填充tableView的内容大小,ios会在这种情况下自动调整inset。

scrollToRowAtIndexPath 方法在这种情况下也不起作用。

到目前为止,我得到的唯一解决方案是向 tableView 插入足够的空单元格。这样,内容大小就足够大了,iOS不会设置inset。

这是Swift example。虽然它在 Swift 中,但想法是一样的。您可以轻松地将其翻译成 Objective-C。

【讨论】:

以上是关于默认隐藏 UITableView 搜索栏的主要内容,如果未能解决你的问题,请参考以下文章

隐藏 UITableView 搜索栏

是否可以隐藏 UITableView 的行但不能隐藏搜索栏?

UITableView 中的搜索栏

如果向上滚动,UITableview 标题不会再次显示

UITableView 标题视图调整大小

SearchBar 过滤和调整 UITableView 单元格?