我想我已经读过,在使用[NSView -init]
而不是指定的初始化程序[NSView -initWithFrame:]
时,只能在代码中创建和约束视图时,这是可以接受的。我认为这是正确的,并开始相应地构建我的界面:所有视图完全约束,但没有明确的框架矩形。一切似乎工作得很好,我猜测在引擎盖下可可做了所有必要的框架设置计算。然后我尝试在我的一个观点中添加tracking area
;它失败了,经过调试我意识到这是因为我的观点既没有框架也没有界限。
在创建/约束代码时,是否应该避免使用[NSView -initWithFrame:]
的建议?或者他们是一种让cocoa根据它的约束产生视图框架的方法?我在代码中添加约束没有问题,但我很想避免推断出我所有的视图框架矩形。