根据初始边界设置NSView默认属性值

时间:2011-09-06 07:27:28

标签: objective-c nsview nib bounds

我需要设置从使用其初始边界计算的Nib加载的NSView的属性。 它的边界内部仍为空 - (void)awakeFromNib,那么视图生命周期中我可以访问其边界的第一点是什么?

2 个答案:

答案 0 :(得分:3)

-viewDidMoveToWindow:

中设置

答案 1 :(得分:0)

确实,Apple documentation清楚地说:

  

重要:由于无法保证从归档实例化对象的顺序,因此初始化方法不应将消息发送到层次结构中的其他对象。可以从awakeFromNib中安全地发送到其他对象的消息 - 这时确保所有对象都被取消存档并初始化(当然,不一定被唤醒)。

在iOS上,您可以使用viewDidLoad方法,但似乎不一定能在Mac上使用。

我相信你会找到你的答案in the stackoverflow post(这是Mac开发人员解决方案,而不是iOS,但它似乎正是你要找的。)