是否可以检测iPad Smart Keyboard上的按键和释放?

时间:2018-07-13 08:18:14

标签: ios ipad keyboard midi audiokit

我是iPad的开源合成器AudioKit Synth One的开发者之一,有人给我们留下了评论,要求通过物理智能键盘而不是屏幕键盘来实现合成器的播放。与Mac的“音乐打字”上的Garageband或Logic Pro相似的功能。 Musical Typing

为此,我需要能够响应按键和按键释放。有人知道Apple的API当前是否可以做到这一点?

1 个答案:

答案 0 :(得分:1)

通过覆盖keyCommands(其中UIResponder是其子类)的UIViewController属性,可以响应来自外部键盘的按键,但是,您将无法检测到不同的动作,例如按下释放键

覆盖应该捕获此事件的UIViewController的此属性

迅速:

override var keyCommands: [UIKeyCommand]? {
    return [
        UIKeyCommand(input: "Z",
                     modifierFlags: [],
                     action: #selector(didPressZ)),
        UIKeyCommand(input: "X",
                     modifierFlags: [],
                     action: #selector(didPressX))
        ] /// etc., return UIKeyCommand for each key you want to react to
}