Swift UIView大小不正确

时间:2014-10-27 23:44:40

标签: ios uiview swift constraints

我创建了一个带有自定义xib文件的ViewController。内幕我有一个名为holderView的精心放置的视图,其中包含适当的约束:

View With Constraints

在控制器中,我有以下代码:

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)
    println(holderView.bounds)
    println(holderView.frame)
}

我得到的是这个值,而不是真正的值:

(0.0,0.0,320.0,568.0)
(0.0,0.0,320.0,568.0)

有谁知道为什么会这样?我在普通的故事板里尝试了完全相同的代码和视图,它运行正常。 viewController由PageViewController加载并附加。

1 个答案:

答案 0 :(得分:6)

自动布局会延迟绘制子视图的时间。看看这是否有效获取视图尺寸:

override func viewDidLayoutSubviews() {
        println(self.holderView.frame.size)
    }

可以使用高度,宽度等。