Игровая площадка macOS: как можно изменить цвет фона?

#swift #xcode #macos #swift-playground

#swift #xcode #macos #swift-игровая площадка

Вопрос:

Я пытаюсь изменить цвет фона основного вида:

 import AppKit
import PlaygroundSupport

class ViewController : NSViewController {
    override func loadView() {
        let nibFile = NSNib.Name("MyView")
        var topLevelObjects : NSArray?
        Bundle.main.loadNibNamed(
            nibFile, owner:nil, topLevelObjects: amp;topLevelObjects)
        let views = (topLevelObjects as! Array<Any>).filter { $0 is NSView }
        self.view = views[0] as! NSView
        self.view.layer?.backgroundColor = NSColor.white.cgColor
    }
}

PlaygroundPage.current.liveView = ViewController()
  

Но представление не меняет цвет:

введите описание изображения здесь

Также откуда берется надпись «Hello world»?

Я буду очень признателен за вашу помощь

Комментарии:

1.Написано ли «Привет, мир!» в заголовке? Является self.view.layer nil ?

2. Где находится кончик в игровой площадке?

3. Просмотр меню -> Навигаторы-> Показать навигатор проекта. Файл xib находится в папке ресурсов.

4. @Willeke, спасибо. Я действительно оценил

Ответ №1:

Вам просто нужно установить для вашего свойства view wantsLayer значение true

 let view = views[0] as! NSView
view.wantsLayer = true
view.layer?.backgroundColor = NSColor.blue.cgColor
  

введите описание изображения здесь

Комментарии:

1. Вы знаете, где находится надпись «hello world»?

2. вам нужно открыть ресурсы вашей игровой площадки, нажмите MyView.xib dropbox.com/s/9un7km2leby0q9q/MyView_xib.png?dl=1