ios - 使用 UITableViewController、UISearchDisplayController 和 'automaticallyAdjustsScrollViewInsets' 隐藏 UISearchBar

标签 ios objective-c uitableview uisearchdisplaycontroller

我想让 UISearchBar 使用 UITableViewcontentInsetcontentOffset 最初隐藏在导航栏后面,但是,我似乎无法让 UITableViewControllerUISearchDisplayControllerautomaticallyAdjustsScrollViewInsets 发挥出色。

如果我设置了 contentInset, Controller 会在显示时重置它。

automaticallyAdjustsScrollViewInsets 设置为 NO 会将表格隐藏在 UINavigationBar 下,并且不会响应我设置 UIViewControllerview 属性(为了改变框架)。如果我覆盖 loadView 并直接设置 View ,它会删除 UITableView 并且只设置 frame 没有任何效果。

这在 iOS 7 中可行吗?

最佳答案

不确定这是否是您想要做的(而且我知道年龄已经过去了)但是如果搜索栏嵌入在 TableView 标题中,这将开始隐藏您的搜索栏。

- (void) hideSearchBar
{
    CGPoint contentOffset = self.tableView.contentOffset;
    contentOffset.y += CGRectGetHeight(self.tableView.tableHeaderView.frame);       //  hide the Search Bar until dragged down
    self.tableView.contentOffset = contentOffset;
}

关于ios - 使用 UITableViewController、UISearchDisplayController 和 'automaticallyAdjustsScrollViewInsets' 隐藏 UISearchBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23576941/

相关文章:

ios - CollectionView 数据源在使用 UICollectionViewController 时不起作用,但在将 UIViewController 与 CollectionView 一起使用时起作用

ios - AVFoundation 最大渲染大小

ios - 如何在 iPhone 锁定屏幕上放置一个图标?

ios - 切片和索引 uitableview

执行 segue 后 Swift 3 解散

ios - swift curl ——用户帖子

ios - 带有 TextView 或标签的更多和更少按钮

objective-c - NSRunningApplication 'terminated' 不可观察

ios - 如何有效地实现多个内容略有不同的自定义 UITableViewCell?

ios - UINavigationController 中的 UITableViewController 来表示未知深度的树结构