IOS 7中的外部蓝牙键盘集成

前端之家收集整理的这篇文章主要介绍了IOS 7中的外部蓝牙键盘集成前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要在我的应用程序中支持外部键盘功能,并且需要在应用程序中检测到Alt Tab Tab等关键组合才能触发某些事件.在 IOS 6中,我已经超越了
- (void)sendEvent:(UIEvent *)anEvent;

函数UIApplication子类中获取外部键盘上的按键组合.

但现在我在IOS 7中测试我的应用程序,并且sendEvent似乎甚至没有被调用任何硬件键按下事件.

任何解决方案..?

解决方法

使用新的 UIKeyCommand类和 UIResponder链,iOS 7中的蓝牙键盘上有100%支持键盘快捷键处理方式. I did blog about this,但这是要点:

在Responder链中的某处为keyCommands添加一个返回UIKeyCommand对象数组的方法

- (NSArray *)keyCommands {
    UIKeyCommand *commandF = [UIKeyCommand keyCommandWithInput:@"f" modifierFlags:UIKeyModifierCommand action:@selector(handleCommandF:)];
    return @[commandF];
}

然后,当按下⌘F(在文本输入视图中)时,Responder链将查找该handleCommandF方法.如果有多个定义,它将使用最严格的定义(例如,View本身优先于ViewController).

请注意,这仅在输入(例如UITextField或UITextView)是第一响应者时才有效.如果你想在你的应用程序中使用“全局”快捷方式,你可以在屏幕上隐藏UITextField并专注于它.

猜你在找的iOS相关文章