首页 > 解决方案 > 为什么我的键修饰符标志与默认枚举不同?

问题描述

在 CMD 按键上,此功能:

override func keyDown(with event: NSEvent) {
    super.keyDown(with: event)
        
    let flags = event.modifierFlags
    print(flags)
    print(NSEvent.ModifierFlags.command.rawValue)
}

返回:

NSEventModifierFlags(rawValue: 1048848)
1048576

为什么原始值不相等?flags == .command由于不等价的原始值,在命令键按下时返回 false。

Xcode 12.5、OSX 11.2.2

标签: swiftxcodemacoscocoa

解决方案


推荐阅读