【发布时间】:2015-06-27 10:19:22
【问题描述】:
这很奇怪。我有一个简单的故事板占位符,其中 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,这按预期工作,但是在我添加初始化程序后,它开始在每次运行应用程序时打开打印对话框。
为什么会发生这种情况?如何正确地为自定义视图重新实现情节提要初始化程序?
【问题讨论】:
-
您是否尝试过删除
print语句?可能是一个非常奇怪的错误... -
哇哦!你是对的,
print是它这样做的原因......这真是令人难以置信! -
好吧,它不应该那样做,打印应该做一些完全不同的事情......:D