【问题标题】:Detect key press without modifier检测没有修饰符的按键
【发布时间】:2019-10-17 09:44:01
【问题描述】:

我想在我的 Catalyst 应用程序中捕获按键。

UIKeyCommand(input: "", modifierFlags: nil, action: #selector(singleShift))

很遗憾,modifierFlags 不能为 nil,并且 Catalyst 不支持 NSEvent。有没有办法检测单键?例如用于键盘应用或游戏?

【问题讨论】:

  • 查看this search 的结果,了解创建不带修饰符的 UIKeyCommand 的几个示例。

标签: mac-catalyst uikeycommand


【解决方案1】:

modifierFlags 字段不是可选的,因此您不能传递nil。它属于UIKeyModifierFlags 类型,即OptionSet,因此如果您不想传递修饰符,只需传递一个空数组即可。

class ViewController: UIViewController {
    override var keyCommands: [UIKeyCommand]? {
        [UIKeyCommand(input: UIKeyCommand.inputPageUp,
                      modifierFlags: [],
                      action: #selector(pageUpPressed(_:)))]
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-16
    • 1970-01-01
    • 2017-05-25
    • 2012-05-26
    • 2014-11-23
    • 2021-12-22
    • 1970-01-01
    • 2017-11-09
    相关资源
    最近更新 更多