从视图中获取容器的宽度和高度

时间:2014-08-27 04:51:24

标签: ios xcode container-view

如果这是重复,请原谅我。我当然认为这是一个显而易见的问题。

我在故事板中有一个容器,它是ModelViewController类(整个视图控制器)。从ModelViewController我需要获取容器的宽度和高度。我正在尝试:

self.view.bounds.size

产生0.563380和0.000000。我也试过

self.view.frame.size

这会产生整个屏幕的尺寸。我在这里缺少什么?

1 个答案:

答案 0 :(得分:10)

来自this post

  

查看框架在viewDidLoad中实际上不可用;您应该将所有几何操作代码移动到viewWillAppear中。系统会破坏你在viewDidLoad中设置的任何更改,以及它在屏幕上显示的时间。

评论

  

实际上,您应该将几何体更改移动到iOS 5之前的-viewDidAppear和iOS 5+的-viewWillLayoutSubviews。 -viewWillAppear:如果正在为视图设置动画,则可能实际上没有正确的边界/方向。

我找到了解决方案。从viewWillLayoutSubviews调用时确实给出了正确的尺寸。我在viewDidLoad打电话给出错误的结果。