什么时候自动布局约束应用于UITableViewCell的子视图?

时间:2016-03-04 15:57:56

标签: ios swift uitableview uiscrollview autolayout

我有一个有一些约束的自定义UITableViewCell。其中一个限制是显示一个UIScrollView,它适合屏幕的边界,一边有一点边距。

这些是滚动视图的约束:

enter image description here

所以它应该与一些尾随空间保持1:1的比例。

现在,在layoutSubviews我在滚动视图中设置了一些内容:

override func layoutSubviews() {
    super.layoutSubviews()

    let pagesScrollViewSize = scrollView.frame.size
    print("SCROLL VIEW SIZE: \(scrollView.frame.size)")
    scrollView.contentSize = CGSize(width: pagesScrollViewSize.width * CGFloat(pageImageUrls.count),
        height: pagesScrollViewSize.height)
    loadVisiblePages()
}

问题在于,当此代码首次执行时,滚动视图的帧尚未达到其最终大小。起初我得到:

滚动视图大小:(380.0,380.0)

然后(可能是在应用了约束之后),

滚动视图大小:(300.0,300.0)

那么,当我去布局内容时,如何保证滚动视图的最终大小?这些约束在什么时候实际应用?

由于

0 个答案:

没有答案