Это странно. У меня есть простой компоновщик раскадровки с GridView
для атрибута имени класса.
class GridView: NSView {
required init?(coder: NSCoder) {
super.init(coder: coder)
print("coder: \(coder)")
}
override func drawRect(dirtyRect: NSRect) {
let rect = NSBezierPath(rect: dirtyRect)
NSColor.redColor().setFill()
rect.fill()
}
}
Это сработало, как ожидалось, только с помощью drawRect
, но после того, как я добавил инициализатор, он начал открывать диалог печати каждый раз, когда запускаю приложение.
Почему это происходит и как я могу правильно переопределить инициализатор раскадровки для пользовательского представления?