【问题标题】:How to hide a search field on top of a UIScrollview如何在 UIScrollview 顶部隐藏搜索字段
【发布时间】:2018-08-10 22:30:57
【问题描述】:

我试图在我的应用中默认隐藏搜索字段,就像在多个 Apple 应用中看到的那样。

(图片来源:OS X Daily http://osxdaily.com/2017/07/27/search-notes-ios/)

现在,搜索字段位于包含视图的顶部,并且工作正常。我可以设置一个默认偏移来隐藏搜索栏,但是当滚动内容大小长度小于滚动视图时,它不会阻止显示。

顺便说一句,我没有在 UIScrollView 中使用 UITableView,它是一个带有子视图的自定义视图。

【问题讨论】:

    标签: ios user-interface uiscrollview uikit


    【解决方案1】:

    将自定义搜索视图的高度约束挂钩为 IBOutlet 并使其隐藏

    self.searHeightcon.constant = 0
    self.view.layoutIfNeeded()
    

    显示

    func scrollViewDidScroll(_ scrollView: UIScrollView) {
       if(scrollView.contentOffset.y == 0)
        {
           self.searHeightcon.constant = 50
        }
        else
        {
            self.searHeightcon.constant = 0
        }
    
        self.view.layoutIfNeeded()
    
    }
    

    【讨论】:

    • 有趣。但是当我向上滚动时,我不确定如何显示它。
    • 查看内部 scrollViewDidScroll 根据 y 偏移管理 sceach 的隐藏/显示
    【解决方案2】:

    如果您总是将contentHeight 设置为等于或大于滚动视图的高度,您可以从偏移量开始隐藏它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-16
      • 1970-01-01
      • 1970-01-01
      • 2022-01-27
      • 1970-01-01
      相关资源
      最近更新 更多