Почему ярлык не отображается в полноэкранном режиме? - PullRequest
0 голосов
/ 29 января 2019

У меня есть этот код

import Cocoa
import AppKit


class MainScreenVC: NSViewController {

    @IBOutlet var textTest: NSTextField!



    override func viewDidLoad() {
        super.viewDidLoad()

    //let presOptions :NSApplication.PresentationOptions = [.fullScreen, .autoHideMenuBar]
    //let optionsDictionary = [NSView.FullScreenModeOptionKey.fullScreenModeApplicationPresentationOptions: presOptions]
    //view.enterFullScreenMode(NSScreen.main!, withOptions: optionsDictionary)

         textTest.stringValue = "Hello"

    }
    override var representedObject: Any? {
        didSet {

        }
    }

}

textTest имеет ограничения, чтобы показать его в середине контейнера.

При запуске приложение отображает «Hello» в середине окна, как и ожидалось.

Если я раскомментирую строки, необходимые для перехода в полноэкранный режим и запуска приложения, он переходит в полноэкранный режим, но текст не отображается.

Почему?

Я использую xCode 10.1

1 Ответ

0 голосов
/ 12 февраля 2019

Не знаю почему, но у меня были те же проблемы, я предложил 2 решения, вы можете использовать toggleFullScreen (:) или setFrame (: display:) в оконном контроллере функция windowDidLoad

например:

  override func windowDidLoad() {
    super.windowDidLoad()

    guard let window = window,
      let screen = window.screen
      else { return }


    window.setFrame(window.frameRect(forContentRect: screen.frame), display: true)
}
...