Полноэкранное приложение с NSToolbar - PullRequest
3 голосов
/ 04 февраля 2012

Мне трудно это объяснить, поэтому, пожалуйста, потерпите меня на минутку.

В Xcode, если он находится в полноэкранном режиме, показ меню приложения также перемещает панель инструментов вниз. Я пытался заставить NSView перемещаться и изменять размер всякий раз, когда отображается строка меню, но я не могу понять, как это сделать. Я думаю, что это как-то связано с событием, потому что установка распорок и пружин в XCode не заставляет его двигаться автоматически. Кто-нибудь может помочь мне выяснить, что это за событие?

Редактировать: Я просто переосмыслил свой вопрос, и я должен сделать исправление. NSToolbar делает это самостоятельно. Я хочу, чтобы обычный NSView перемещался и изменял размеры, когда окно переходит в полноэкранный режим.

1 Ответ

2 голосов
/ 05 декабря 2012

Я думаю, что у вас может быть та же проблема, что и у меня, - если это так, вам нужно вызвать [NSToolbar setFullScreenAccessoryView:] на «дополнительном представлении», которое вы хотите приклеить к нижней части панели инструментов NSToolbar.

Обратите внимание, что в оконном режиме ваше вспомогательное представление должно занимать пространство в содержимом NSWindow, как и любое другое представление, но когда вы входите в полноэкранный режим, вам нужно каким-то образом удалить вспомогательное представление, так как Cocoa вырывает его из макета и оставляет пробел, если вы не учитываете это.

Я, конечно, могу понять, что эту проблему трудно объяснить, не имея базовых знаний - у меня была такая же проблема. :)

См. Также: Как получить двухрядную панель инструментов, как в Mail.app и Xcode?

...