Keyboard shortcuts are implemented via the existing UIKeyCommand
system on UIResponder
. Here's a simple example of how your currently visible view controller can listen for Escape
key presses by the user:
class MyKeyListeningViewController: UIViewController {
override var keyCommands: [UIKeyCommand]? {
return [UIKeyCommand(input: UIKeyCommand.inputEscape,
modifierFlags: [],
action: #selector(doCancelCommand(sender:)))
]
}
}
Keep in mind that on macOS multiple views can easily be visible at the same time and the rules of the responder chain apply.