Использование ColorPanel в NSToolbar в Swift
Я только начал изучать Swift, и я пытаюсь создать приложение, которое меняет цвет фона на основе цвета, выбранного в NSColorPanel в NSToolbar.
При нажатии на Colors
Я столкнулся с палитрой цветов. Теперь я не могу понять, как извлечь / прочитать цветовые коды в Swift.
Я просмотрел весь интернет, но, к сожалению, ничего не помогло.
Надеюсь, кто-то здесь может предоставить больше информации.
1 ответ
Решение
Сначала вам нужно добавить наблюдателя, когда цветовая панель сменила цвет.
NotificationCenter.default.addObserver(self, selector: #selector(colorPanelDidChange(_:)),
name: NSColorPanel.colorDidChangeNotification, object: nil)
где colorPanelDidChange
Ваш пользовательский метод:
@objc func colorPanelDidChange(_ notification: NSNotification)
В этом методе вы извлекаете содержимое уведомления:
if let cp = notification.object as? NSColorPanel
и теперь вы можете сделать cp.color
чтобы получить реальный цвет, на который нажал пользователь.