В Какао, есть ли способ программно изменить размер представления (в данном случае окна), чтобы соответствовать всем его подпредставлениям? - PullRequest
1 голос
/ 14 ноября 2009

Подумайте, крестики-нолики. Вы создаете кнопки в строках и столбцах, и вы хотите установить ширину и высоту родительского окна (на самом деле, размер contentView окна, верно?). Но, возможно, вы захотите иногда использовать сетку 4x4 или 5x5, поэтому вы не можете использовать настройку окна по умолчанию.

Я повторяю и делаю математику, чтобы определить расположение кнопок. (Существует пространство, заполняющее внутреннюю часть окна, и отдельное значение для отступа между кнопками, так что оно не совсем прямое.) Я думаю, было бы чище не делать эту математику в двух местах для установки окна размер, если бы я мог избежать этого.

Полагаю, я мог бы правильно устанавливать размер окна каждый раз, когда добавляю кнопку, но это глупо. Или, может быть, это не так, поскольку он не будет рисовать, пока я не закончу?

edit: я просто не хочу иметь две разные математические фигуры и должен убедиться, что они делают один и тот же вывод, понимаете?

1 Ответ

1 голос
/ 14 ноября 2009

В UIKit, UIView имеет метод -sizeToFit. В AppKit несколько подклассов представления, таких как NSBox и NSText, также реализуют -sizeToFit. Вы можете просто использовать NSBox без рамки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...