UIView的initWithFrame无法正常工作?

时间:2009-10-21 11:29:00

标签: iphone

我通过Interfacebuilder将视图控制器设置为特定视图。 但initWithFrame没有调用,但是当我设置断点时会调用drawRect吗?

2 个答案:

答案 0 :(得分:17)

是的,因为无法保证在取消归档xib时将调用initWithFrame:。尝试使用awakeFromNibviewWillLoadviewDidLoad。您选择哪一个主要取决于您在显示过程中需要插入代码的阶段。

另外,请查看this question的答案。

答案 1 :(得分:3)

根据文档 - http://developer.apple.com/library/ios/#documentation/uikit/reference/UIView_Class/UIView/UIView.html - 当您的视图对象随后从nib文件加载时,不会调用initWithFrame: 。重构nib文件中的对象,然后使用它们的initWithCoder:方法进行初始化,该方法修改视图的属性以匹配存储在nib文件中的属性。