ios - 像 Facebook 或 Safari 一样折叠 UINavigationBar?

标签 ios iphone uiscrollview uinavigationbar

我的应用程序中有多个 UIViewController - 特别是在 UIWebView 中显示网页内容的应用程序 - 可以折叠高度UINavigationBar,就像您在 Facebook 应用程序或 iOS 上的 Safari 中滚动时看到的那样。但是,我终究无法弄清楚这是如何完成的。

我意识到我可能需要关闭 UIScrollViewDelegate scrollViewDidScroll: 方法,但到目前为止还没有取得太大的成功。谁能给我一些关于如何实现这一目标的指示?我确实看到了AMScrollingNavbar项目,但由于公司要求,我不能在我们的应用程序中使用它。

最佳答案

我是 AMScrollingNavbar 的创建者。
正如您从代码中看到的那样,我发现实现该行为的最佳方式是使用手势识别器。关键是实现它的委托(delegate)协议(protocol),方法返回YES:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer

至于 UIWebView,请记住您必须处理 webview 中 contained 的 ScrollView 。 不过,您可以在源代码中找到更多信息,并且由于我是在 MIT 许可下发布它的,所以您可以随意将其包含在您的商业项目中,或者根据需要进行修改。

我还发表了一篇关于我用来创建库的过程的文章,你可以在这里阅读: AMScrollingNavbar: Creating a Cocoapod

它解释了我在编写库时遇到的几个问题。

希望这对您有所帮助。 干杯

关于ios - 像 Facebook 或 Safari 一样折叠 UINavigationBar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21462739/

相关文章:

ios - TextField 在 ScrollView Swift 中看不见

ios - 边界半径和溢出 :hidden (ionic app)

iphone - 响应式网站的一页在 iPhone 上模糊/模糊

iphone - 不使用捏合/UIScrollView 缩小照片

ios - Obj-C controller.view.frame 获得真实大小

iphone - 使用 SQLite 中的数据在 UIScrollView 中延迟加载

objective-c - 无法显示正确的 unicode 符号

ios - Web View 为构建的应用程序加载页面,但不测试飞行部署的版本

ios - 组合图像在设备 iOS 中不起作用

iphone - 根据行数计算单元格高度?