我注意到我的应用程序崩溃,如果我:
调用它的代码如下:
guard let alertWindow = alert.window else {//It crashes here
//other code
return false
}
类实现为空。它只是NSWindow的子类(如果我使用NSWindow,一切都还可以)
class CustomAlertWindow: NSWindow {
}
使用空的Objective-C子类
可以正常工作@interface CustomAlertWindow: NSWindow
@end
@implementation CustomAlertWindow
@end
有人遇到这种崩溃。看起来它试图订阅NSScrollView事件。有些人为什么失败了。我的目标可能有问题,或者它可能只是一个Cocoa / XCode /等。 BUG ...
我目前无法在空白项目中重现它,但我会继续尝试。
当我重载 addObserver 方法时,我发现keyPath是" contentLayoutRect "
override func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options: NSKeyValueObservingOptions = [], context: UnsafeMutableRawPointer?) {
super.addObserver(observer, forKeyPath: keyPath, options: options, context: context)
}
两者都是一样的:
和
P.S。 无论如何,感谢关注。
答案 0 :(得分:0)