有没有办法检测iOS屏幕键盘和/或these等外接键盘上的所有按键?我知道捕获键入文本的“接受”方式是使用一个不可见的文本框,但这似乎只能捕获“文本”,而不是实际按键(没有Ctrl,Alts,Shift等)
我在文档中找不到任何暗示这是可能的东西,尽管它看起来非常基本。我错过了什么,或者我们真的无法在iOS中实现这一点吗?
谢谢!
答案 0 :(得分:0)
您可以覆盖ViewController中的keyCommands以添加触发器操作:
例如:
//MyViewController
override var keyCommands: [UIKeyCommand]?{
//Get UIKeyCommand
var keys = [UIKeyCommand]()
//Add triggle for Num only
for num in "123456789".characters {
keys.append(
UIKeyCommand(input:String(num),modifierFlags:
UIKeyModifierFlags(rawValue: 0), action:
#selector(MyViewController.keyCommand(_:)), discoverabilityTitle:
NSLocalizedString("keydiscover_number",
comment: "KeyDiscover Number")))
}
}
//The Triggle
func keyCommand(_ sender: UIKeyCommand) {
print("Number Clicked");
}
https://developer.apple.com/documentation/uikit/uiresponder/1621141-keycommands