在Cocoa中,有没有办法以编程方式调整视图大小(在本例中为窗口)以适应所有的子视图?

时间:2009-11-13 21:05:26

标签: objective-c cocoa

想想tic-tac-toe。您正在创建行和列中的按钮,并且您想要设置父窗口的宽度和高度(实际上,窗口的contentView的大小,对吧?)。但也许您希望有时使用4x4网格或5x5,因此您无法使用默认窗口设置。

我迭代并做数学来确定按钮的位置。 (窗口内部有空间填充,按钮之间有填充的单独值,所以它不是完全直接的。)我认为在两个地方设置窗口时不必进行数学运算会更清晰大小,如果我可以避免它。

我想每次添加按钮时都可以正确设置窗口大小,但这有点傻。或者也许不是,因为在我完成之前它不会画它?

编辑:我只是不想要有两个不同的数学,并且必须确保他们得出相同的结论,你知道吗?

1 个答案:

答案 0 :(得分:1)

在UIKit中,UIView有一个-sizeToFit方法。在AppKit中,几个视图子类(如NSBox和NSText)也实现了-sizeToFit。你可以使用没有边框的NSBox。