Если вы указали свой цвет по умолчанию, инициализаторы из NSView должны по-прежнему работать.
Вот несколько способов сделать это:
var myClassVar: NSColor?
var myClassVar: NSColor! // make sure to set this before you actually access it
var myClassVar: NSColor = NSColor.clearColor()
Второй пример (неявно развернутый опция) является то, что Apple, делает с IBOutlets. В противном случае вам понадобится инициализатор, который устанавливает каждую из ваших переменных в ненулевое значение в ваших методах init.
Для получения дополнительной информации об этом см Swift Initialization and the Pain of Optionals, на котором обсуждаются эти решения:
- Инстанцирование его перед вызовом super.init.
- Дополнительно переменные (
NSColor?
), после того, как его инстанцирование super.init
- Косвенно развернутый опционально переменного (
NSColor!
)
- Используя ленивое свойство
- Использования ленивого свойства с закрытием