我知道NSWindow尚未在Mac Catalyst中正式可用,但我看到了几篇帖子和成功案例,它们是通过NSClassFromString
和valueForKeyPath
访问它的。但是,由于它总是返回nil,所以我一直无法使它工作。
guard let nsWindows = NSClassFromString("NSApplication")?.value(forKeyPath: "sharedApplication.windows") as? [AnyObject] else {
return nil
}
也曾尝试使用
在目标c中进行操作NSArray *const nsWindows = [NSClassFromString(@"NSApplication") valueForKeyPath:@"sharedApplication.windows"];
但结果相同-每次都为零。
是否有一个技巧可以使它正常工作,或者这种方法是否已被关闭作为访问它的潜在方法?它可以成功获取NSApplication实例。但是windows属性始终为nil。