使用未解析的标识符:kCGWindowImageDefault(和其他 Core Graphics 常量)
Use of unresolved identifier: kCGWindowImageDefault (and other Core Graphics constants)
我是 Swift 开发的新手。我正在 Swift 中为 MacOS(不是 iOS)编写一个应用程序,并试图改编一些来自 this Apple sample Objective-C project 的代码以用于我的程序。
我遇到的问题是某些 Apple 定义的常量,例如 kCGWindowImageDefault
and kCGWindowListOptionAll
导致 XCode 报告编译时错误 "Use of unresolved identifier [identifier]"。
有些令人惊讶的是,如果我右键单击 kCGWidowImageDefault
和 select "Jump to Definition",XCode 会 跳转到该常量的定义(在 CoreGraphics > CGWindow.h > CGWindowImageOption 中)——因此 XCode 似乎知道该常量是什么。
以下是我的 ViewController.swift 文件的相关片段:
import Cocoa
import CoreGraphics
class ViewController: NSViewController {
...
func myFunction() {
// *** XCode reports the error on kCGWindowImageDefault on this line:
let imageOptions : CGWindowImageOption = kCGWindowImageDefault
...
}
}
Apple 文档(如上链接)没有说明需要import
编辑什么才能使用这些常量。
XCode 似乎成功地识别了我正在使用的类型,例如 CGWindowImageOption
- 它只是无法识别的常量.
我需要做什么才能在我的 Swift MacOS 程序中成功使用 kCGWindowImageDefault
和类似常量?
kCGWindowImageDefault
仅适用于 Objective-C,不适用于 Swift。在Swift中,CGWindowImageOption
是一个OptionSet
。对于默认设置,您只需使用一个空选项集:
let imageOptions : CGWindowImageOption = []
对于 CGWindowListOption
你可以这样做:
let listOptions: CGWindowListOption = .optionAll
请务必查看这些枚举的 Swift 参考文档。您不能使用 Objective-C 值。
我是 Swift 开发的新手。我正在 Swift 中为 MacOS(不是 iOS)编写一个应用程序,并试图改编一些来自 this Apple sample Objective-C project 的代码以用于我的程序。
我遇到的问题是某些 Apple 定义的常量,例如 kCGWindowImageDefault
and kCGWindowListOptionAll
导致 XCode 报告编译时错误 "Use of unresolved identifier [identifier]"。
有些令人惊讶的是,如果我右键单击 kCGWidowImageDefault
和 select "Jump to Definition",XCode 会 跳转到该常量的定义(在 CoreGraphics > CGWindow.h > CGWindowImageOption 中)——因此 XCode 似乎知道该常量是什么。
以下是我的 ViewController.swift 文件的相关片段:
import Cocoa
import CoreGraphics
class ViewController: NSViewController {
...
func myFunction() {
// *** XCode reports the error on kCGWindowImageDefault on this line:
let imageOptions : CGWindowImageOption = kCGWindowImageDefault
...
}
}
Apple 文档(如上链接)没有说明需要import
编辑什么才能使用这些常量。
XCode 似乎成功地识别了我正在使用的类型,例如 CGWindowImageOption
- 它只是无法识别的常量.
我需要做什么才能在我的 Swift MacOS 程序中成功使用 kCGWindowImageDefault
和类似常量?
kCGWindowImageDefault
仅适用于 Objective-C,不适用于 Swift。在Swift中,CGWindowImageOption
是一个OptionSet
。对于默认设置,您只需使用一个空选项集:
let imageOptions : CGWindowImageOption = []
对于 CGWindowListOption
你可以这样做:
let listOptions: CGWindowListOption = .optionAll
请务必查看这些枚举的 Swift 参考文档。您不能使用 Objective-C 值。