MacOS NSView не придерживается ограничений - PullRequest
0 голосов
/ 10 октября 2019

У меня есть NSView в моей основной раскадровке. Я установил ограничения на начало, конец и вершину суперпредставления с константой 0 и множителем 1. По сути, чтобы он растягивался, чтобы заполнить экран. Я установил высоту 35.

У меня также есть этот код в моей функции viewDidAppear, чтобы сделать приложение полноэкранным:

        let presOptions: NSApplication.PresentationOptions = [.hideDock, .hideMenuBar, .fullScreen]

        let optionsDictionary = [NSView.FullScreenModeOptionKey.fullScreenModeApplicationPresentationOptions :
            NSNumber(value: presOptions.rawValue)]

        self.view.enterFullScreenMode(NSScreen.main!, withOptions: optionsDictionary)
        self.view.wantsLayer = true

        vNavBar.wantsLayer = true;
        vNavBar.layer?.backgroundColor = NSColor.black.cgColor

Этот код отлично работает, как и настройка цвета фонана виде раскадровки (vNavBar). Когда я печатаю вид и фрейм vNavBar, я получаю следующие результаты:

(0.0, 0.0, 1920.0, 1080.0)
(0.0, 1045.0, 1920.0, 35.0)

Прошло много времени с тех пор, как я работал в MacOS. Я считаю, что координата y подпредставления (vNavBar) измеряется снизу суперпредставления. Поскольку его высота равна 1080, я ожидал, что координата y vNavBar будет 1055.0?

...