我正在尝试复制类似于Android的折叠工具栏(请参阅此link以了解我想要实现的效果)。我找到了一个很好的转变here。
我的主UIScrollView
名为fgScrollView
,而位于顶部的辅助名称为bgScrollView
。整个UIViewController
嵌入在UINavigationController
。
我将fgScrollView
固定到容器视图。我将bgScrollView
顶部,右侧和左侧固定到fgScrollView
,我给它一个稳定的 220 高度,然后我放在bgScrollView
a {{ 1}}我也向所有方面钉住,我给它高度 220 。 (所有引脚都有0距离)
这是它从IB看起来的样子(您在层次结构中看到的UIImageView
放置在那里以给出UILabel
的可滚动高度:
在我设置的fgScrollView
方法中:
scrollViewDidScroll
(我已经将fgScrollView设置为委托,我随机选择了1.4)并在 Interface Builder 中选择调整滚动视图插入选项。< / p>
结果就是这个:
但是一旦我点击向上滚动就会发生这种情况(你可以看到间隙 - 它停止固定在顶部):
当我滚动到顶部时,它就像那样。
我取消选中调整滚动视图插入选项,我注意到的一个奇怪的事情是图片没有放在导航栏下,虽然我已经检查了选项在顶部和底栏:
当我开始滚动时,会发生这种情况:
即使我滚回到顶部,也会保持这种状态。
我尝试以编程方式解决问题。我添加导航栏和状态栏高度,我声明:
bgScrollView.contentOffset.y = scrollView.contentOffset.y * 1.4
结果如下:
任何线索?...