我的应用中有几个UIViewController
- 特别是在UIWebView
中显示网页内容的内容 - 这样可以折叠UINavigationBar
的高度,就像你在Facebook应用程序或iOS上的Safari中滚动一样。但是,我不能为我的生活弄清楚这是怎么做的。
我认识到我可能需要关闭UIScrollViewDelegate scrollViewDidScroll
:方法,但到目前为止还没有取得多大成功。谁能给我一些关于如何实现这一目标的指示?我确实看到了AMScrollingNavbar项目,但由于公司的要求,我无法在我们的应用程序中使用它。
答案 0 :(得分:1)
我是AMScrollingNavbar的创建者 从代码中可以看出,我发现实现该行为的最佳方法是使用手势识别器。它是实现其委托协议的关键,为方法返回YES:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
对于UIWebView
,请记住您必须处理webview中的滚动视图包含。
您可以在源代码中找到更多信息,因为我在MIT许可下发布了它,所以请随意将其包含在您的商业项目中,或者根据您的需要进行修改。
我还发表了一篇关于我用来创建库的过程的文章,你可以在这里阅读: AMScrollingNavbar: Creating a Cocoapod。
它解释了我在编写库时遇到的一些问题。
希望这会有所帮助。 干杯