ios - 如何在滚动 Collection View 内的 TableView 时隐藏导航栏

标签 ios swift uitableview uinavigationcontroller uicollectionview

我有一个包含 Collection View 的 View Controller 。在 Collection View 中,我有一个 TableView 。每当我滚动表格 View 时,导航栏都应该隐藏。

  1. View Controller
  2. collection view --- Collection View 单元格
  3. table view ----表格 View 单元格

如何隐藏导航栏?

最佳答案

您可以使用 scrollview 委托(delegate)方法来隐藏和显示导航栏。 检查以下方法

func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
    self.navigationController?.setNavigationBarHidden(true, animated: true)
}
func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {
    if decelerate == false {
        self.navigationController?.setNavigationBarHidden(false, animated: true)
    }
}
func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
    self.navigationController?.setNavigationBarHidden(false, animated: true)
}

希望它对你有用。

关于ios - 如何在滚动 Collection View 内的 TableView 时隐藏导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48520850/

相关文章:

ios - Swift - UIButton 改变宽度

iphone - UINavigationController 逻辑中 searchDisplayController.searchResultsTableView 的行为

ios - 自定义 UITableViewCell 高度在移动时发生变化

uiview - 从 UITableViewCell 的内容 View 中移除 subview

ios - 在 UISplitViewController 中刷新附件类型的最佳做法是什么?

javascript - 如何在我的 Node.js 服务器上验证 GKLocalPlayer

ios - 使用 AVAudioPlayer 和有效的 URL 播放声音

swift - 从 Parse 获取 PFFile 时数组超出索引

swift - 使用 map/reduce 函数将一个结构转换为另一个结构

ios - View Controller 需要时间来加载