2015-11-04 89 views
2

这超出了令人沮丧的地步。我有与UINavigationController的(因而UINavigationBar的)推我UIScrollView的内容倒在顶部的问题,类似的问题在这里找到:IOS9:UINavigationController中的UIScrollView偏移量

iOS 7 -- navigationController is setting the contentInset and ContentOffset of my UIScrollView

IOS7 : UIScrollView offset in UINavigationController

我都尝试建议的解决方法在我的视图控制器的viewDidLoad()方法中设置self.automaticallyAdjustsScrollViewInsets = true,并在Interface Builder中取消选择​​。这两个解决方案都删除了顶部的边界,但正如其他一些人已经注意到的,我无法再滚动。

的UIScrollView中和内容查看填充整个视图控制器。我的内容视图(在UIScrollView内)包含标签,分段和底部的UITextView。它与Content View中的内容有关吗?

如果需要,我可以附上照片。使用的XCode 7,斯威夫特2,和iOS 9

+0

我解决了我的问题。在自动布局中,我没有设置内容视图的高度限制。我将内容视图的底部固定到包含UIScrollView的视图控制器。我删除了该引脚并明确设置了高度。它现在有效。 –

回答

2

我解决了我的问题。在自动布局中,我没有设置内容视图的高度限制。 以前,我将内容视图的底部固定到包含UIScrollView的视图控制器。 我删除了该引脚并明确设置了高度。它现在有效。

0

可能会或可能不适合你,但如果你有一个导航控制器,你不需要它为半透明,你可以沿着线做一些self.navigationController.navigationBar.translucent = NO;

这可能有助于您的奇数偏移。

+0

我给了它一个镜头,但无济于事。如果我将该属性设置为false,则无论“Adjust Scroll View Insets”设置为什么,仍然会将内容向下推送。 –

1

我刚碰到同样的问题。我有一个“关于”视图与一堆包含静态文本的标签。我有一个视图控制器内的UIScrollView,它被推下来。我有一个标签固定在屏幕的底部,当没有必要这样做时,屏幕底部会被拉出页面。

我有以下视图层次结构:

  • 视图控制器
    • 查看
    • 滚动查看
      • 内容的浏览(UIView的)
      • 标签
      • 标签

Content View被钉到的Scroll View边界,但宽度和高度等于有约束View

我通过添加另一个UIViewView孩子解决了这个。我的层次,现在看起来是这样的:

  • 视图控制器
    • 查看
    • 内部景观(的UIView)
    • 滚动查看
      • 内容视图(UIView的)
      • 标签
      • 标签

我设置Content View高度约束等于高度Inner View。这解决了我的问题,一切开始正确显示。 Inner View被固定到View的边界。

注意:在层次结构中,Label应该是Content View的子项。在预览中,它显示Markdown列表不能深入。