gpt4 book ai didi

xcode - 无法在 Swift 2.0 中正确使用 NSEventModifierFlags

转载 作者:可可西里 更新时间:2023-11-01 00:23:47 24 4
gpt4 key购买 nike

我正在尝试在 Xcode 7 (7A120f) 中开发一个小的 Mac 应用程序,但它不允许我这样做。据称,这段代码是错误的:

let composeHotKey = DDHotKey(keyCode: UInt16(kVK_Return), modifierFlags: NSEventModifierFlags.CommandKeyMask | NSEventModifierFlags.ShiftKeyMask, task: {
event in

self.doSomething()
})

尝试编译我的应用程序会导致 Xcode 构建失败并显示以下错误消息,同时突出显示 NSEventModifierFlags.CommandKeyMask | NSEventModifierFlags.ShiftKeyMask部分:

Binary operator '|' cannot be applied to two NSEventModifierFlags operands

这是怎么回事?根据我在网上找到的所有内容,我应该能够做到这一点。

最佳答案

在 Swift 2 中,像 NSEventModifierFlags 这样的位字段样式枚举作为 OptionSetType 的子类型导入到 Swift 中。那些不像在 C(或 Swift 1.x)中那样使用位旋转语法。

相反,此类类型使用反射(reflect)集合逻辑的方法和语法。您可以使用一组文字创建一个:

let composeHotKey = DDHotKey(keyCode: UInt16(kVK_Return), modifierFlags: .CommandKeyMask.rawValue | .ShiftKeyMask.rawValue, task: {
event in

self.doSomething()
})

关于xcode - 无法在 Swift 2.0 中正确使用 NSEventModifierFlags,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31224099/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com