如果我错过了这里的内容,我很抱歉,但我认为在IB中创建的UIView对象应该在viewDidLoad中创建它们的帧,这样你就可以在viewDidLoad或awakeFromNib或viewWillAppear中根据这个视图进行初始设置.我在每个方法中记录了输出:
NSLog(@"%@ %s", NSStringFromCGRect(self.zoomView.frame), __FUNCTION__);
Run Code Online (Sandbox Code Playgroud)
总而言之,我得到{0,0,0,0}.
这是我的UIStoryboard中的第一个nib,我正在使用Autolayout和iOS 6.我可以在以前的应用程序上发誓我已经使用了在IB中创建的其他UIView对象的框架进行设置.有什么东西改变了吗?或者我只是错误地记得它?谢谢!
我有完全相同的问题。是的,你没记错 - iOS 5 中的情况有所不同。我总是在其中设置视图,viewDidLoad:
并且框架已经是视图实际在屏幕上时的样子。
现在在 iOS 6 中,如果启用了自动布局,您需要将代码放入viewDidAppear:
有效的框架中。显然,布局是在这两个调用之间完成的。
归档时间: |
|
查看次数: |
809 次 |
最近记录: |