我制作了一个使用蓝牙条形码扫描器的应用程序。当连接条码扫描器时,屏幕键盘不会再出现。因此我无法使用屏幕键盘输入文字。通过条形码进行文本输入并不是非常方便(因为我想输入非常可变的数据),所以我正在寻找一种方法来显示屏幕键盘,尽管连接了外部键盘。 Apple无线键盘通过将弹出键发送到iPad来实现这一点。Apple iOS:Howto将“弹出键”发送到文本输入系统
我有一个弹出键的键码161我可以做一个NSString与弹出键如下在互联网上找到:
// Put the eject key Unicode U+23CF in a NSString. Two different ways possible:
NSString *eject = [NSString stringWithFormat:@"%C", 0x23CF];
NSString *eject2 = [NSString stringWithUTF8String:"\u23CF"];
当查看调试器,无论是NSString的显示弹出图标, NSString的内容,所以看起来我有代码正确填充NSString与弹出按钮。但我的问题是,如何将此NSString发送到键盘输入系统以触发屏幕键盘弹出?我无法通过制作带有“\ u23CF”内容的条形码发送它,因为它不被识别为UTF8字符串。设置UITextField的文本(带或不带返回键)也不会完成这项工作。
任何人都可以帮我解决这个问题吗?我错过了什么吗?据我所知,苹果公司给我们的屏幕键盘上唯一的控制权是使用becomeFirstResponder和resignFirstResponder,但是当连接外部键盘(或扫描仪)时,这是无用的。