视图中的 UIScrollview 框架不正确DidLayoutSubviews



我正在使用 Xcode7.3.1.My ViewController 包含这样的结构 UIScrollview -> UIView -> UIScrollview .我正在为这些视图使用自动布局。我试图在viewDidLayoutSubviews中打印我的内部滚动视图框架,但我没有得到准确的框架。在 xib 中,视图控制器的部分不显示自动布局的任何错误。请帮我解决这个问题?

我意识到这是一个相当古老的问题,但我刚刚遇到了这个问题并找到了一个(黑客(解决方案。这似乎是SDK中的一个错误。发生的情况是,滚动视图的内容不会像您期望的那样在viewDidLayoutSubviews之前进行布局。所以我的解决方案是强制它。

override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()
    scrollView.setNeedsLayout()
    scrollView.layoutIfNeeded()
    // now scroll view content should laid out as expected
}

最新更新