滚动视图和导航栏 ios9

Posted

技术标签:

【中文标题】滚动视图和导航栏 ios9【英文标题】:ScrollView and Navigation Bar ios9 【发布时间】:2016-02-23 20:42:53 【问题描述】:

我在导航控制器中嵌入了一个视图控制器(名为 View2)。 在这个视图中,我有一个覆盖所有视图(包括导航栏)的 ScrollView。

这个视图控制器是通过调用从另一个视图呈现的:

let view2 = self.storyboard?.instantiateViewControllerWithIdentifier("View2") as! View2
let modalStyle: UIModalTransitionStyle = UIModalTransitionStyle.CrossDissolve
let nav: UINavigationController = UINavigationController.init(rootViewController: view2)
nav.modalTransitionStyle = modalStyle
self.presentViewController(nav, animated: true, completion: nil)

在我的 View2 中,我将导航栏调整为半透明:

navigationController?.navigationBar.setBackgroundImage(UIImage(), forBarMetrics: UIBarMetrics.Default)
navigationController?.navigationBar.shadowImage = UIImage()
navigationController?.navigationBar.translucent = true

但是有一个问题,当 View2 出现时,滚动视图在导航栏下方开始。我必须在滚动视图上点击一次才能看到它在屏幕顶部的导航栏上自动调整。

有解决办法吗?

我希望滚动视图出现在屏幕顶部,在半透明导航栏上方。

感谢您的反馈,

托马斯

【问题讨论】:

【参考方案1】:

您是否尝试在视图控制器上设置automaticallyAdjustsScrollViewInsets = false

另一种选择是取消选中视图控制器属性检查器中“扩展边缘”中的“顶部栏下”选项。

希望这会有所帮助。

【讨论】:

设置automaticallyAdjustsScrollViewInsets = false 后设置我的滚动视图修复它。非常感谢这个技巧!

以上是关于滚动视图和导航栏 ios9的主要内容,如果未能解决你的问题,请参考以下文章

图像视图在滚动视图中隐藏导航栏

滚动视图导航错误[关闭]

iOS:滚动表格视图时隐藏和显示自定义导航栏

iOS导航栏在滚动时被隐藏(也是一种滚动),无论它在滚动视图之外

带有导航栏的滚动视图控制器

UIDocumentPickerViewController 滚动视图与顶部导航栏重叠