【问题标题】:Hide navigationbar iOS with tiny title用小标题隐藏导航栏iOS
【发布时间】:2014-07-29 08:59:12
【问题描述】:

我想隐藏导航栏,但仍然包含一个小说明,就像 Safari 或 IMDb 应用程序一样。看图,这就是我想要的效果。当用户开始滚动时如何显示/隐藏导航栏,还包括标题。这应该是动画的,但不需要逐渐动画,所以如果一个动画开始就足够了。

我查看了多个答案,例如这个:Imitate Facebook hide/show expanding/contracting Navigation Bar,但它没有描述如何设置小标题。

【问题讨论】:

    标签: ios objective-c animation uinavigationcontroller uinavigationbar


    【解决方案1】:

    这是建议 - 在向上滚动时,您可以隐藏导航栏并粘贴一个透明的标题视图,其标题始终位于屏幕顶部(如果您愿意,可以将此透明视图添加到“窗口” )。向下滚动隐藏透明标题视图并添加导航栏。希望这会有所帮助!

    【讨论】:

      【解决方案2】:

      这个问题的大多数解决方案是“隐藏导航栏并粘贴一个透明的标题视图,标题始终位于屏幕顶部”。

      但是如果你按住 Safari 的 searchBar,searchBar 的背景会变暗(作为被选中的标志),同时在你向上滚动的同时,你会发现变暗的区域逐渐变小(并且 searchBar能够在“消失”时响应触摸事件)。也就是说,Apple 并不是通过简单地更换导航栏来实现的。

      另一种方式:

      1. 设置滚动视图的委托
      2. 在“scrollViewDidScroll:”中,获取offSet,然后像这样改变navigationBar的frame:

      `navigationBar.transform = CGAffineTransformMakeScale(sx, sy);'

      1. 正确设置导航栏的框架;
      2. 逐渐改变searchBar的背景颜色;
      3. 改变searchBar文字的文字颜色 逐渐地。

      希望对你有帮助:)

      【讨论】:

        猜你喜欢
        • 2019-06-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-02-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多