隐藏导航栏后面的 tableHeaderView
Posted
技术标签:
【中文标题】隐藏导航栏后面的 tableHeaderView【英文标题】:Hiding tableHeaderView behind of the Navigation Bar 【发布时间】:2017-03-30 02:30:35 【问题描述】:我使用以下代码行将搜索栏添加为tableHeaderView
:
self.tableView.tableHeaderView = self.searchController.searchBar
但我的问题是像 ios 应用程序一样隐藏它。在 iBooks 应用程序的搜索栏上,始终位于导航栏的后面。我没有从 Apple 的文档中找到任何相关文档。
【问题讨论】:
【参考方案1】:要从一开始就隐藏此栏,您可以使用setContentOffset
,如this answer 所示:
self.tableView.setContentOffset(CGPoint(x: 0, y: 44), animated: false)
这应该从一开始就隐藏搜索栏。
【讨论】:
不起作用。我在 viewDidLoad 方法中调用了你的建议override func viewDidLoad() super.viewDidLoad() DispatchQueue.main.asyncAfter(deadline: .now() + 0.01) self.tableView.setContentOffset(CGPoint.init(x: 0, y: 44), animated: false)
这很好用。感谢您的帮助
这很奇怪。我想知道为什么它会延迟工作。你试过没有延迟animated: true
?
尝试将其放入viewDidAppear
。 It occurs later in the lifecycle of the UIViewController
非常感谢!以上是关于隐藏导航栏后面的 tableHeaderView的主要内容,如果未能解决你的问题,请参考以下文章
Monotouch Dialog 部分隐藏在 IOS 7 顶部导航栏和时钟后面