这是专业人士的问题...... 我正在开发Ipad上的应用程序,我正在使用带蓝牙的条形码阅读器。我已经将条形码阅读器与我的Ipad同步,我可以在textField上捕获文本而不会出现问题。 当我读取条形码时,我不想将它放在textField上,我想在类上捕获它,处理它并决定如何处理它。我在互联网上搜索了它的方法,但我找不到它。有人可以帮帮我吗?我可以为委托做一个接收输入字符串的类吗?
我有点失落,任何帮助对我都非常有用
感谢您的时间!!
答案 0 :(得分:1)
我已经解决了创建隐藏文本字段的问题,该文本字段在创建viewcontroller时成为第一个响应者。在我完成了相同的viewController之后,这个文本字段的委托。当BT代码栏阅读器执行读操作时,他在结尾处返回,因此它调用 - (BOOL)textFieldShouldReturn:我处理信息的地方。我希望这对于未来遇到同样问题的人有用。我发布了代码:
_textSender = [[UITextField alloc] initWithFrame:CGRectMake(150, 300, 300, 25)];
[_textSender setBackgroundColor:[UIColor whiteColor]];
[self.view addSubview:_textSender];
_textSender.hidden=YES;
[_textSender becomeFirstResponder];
_textSender.delegate=self;
- (BOOL)textFieldShouldReturn:(UITextField *)textField{
[messageSenderProtocolDelegate message:textField.text];
return YES;
}
这不是一种美丽的方式,它给我一个小问题,当BT条形码断开键盘出现,这对我不利。我希望我的视图在没有键盘的情况下干净整洁。现在我将研究它是否是键盘显示时调用的函数,以防止他显示
如果有人有任何建议,那将是有用的,但感谢你的帮助Erik!
答案 1 :(得分:0)
您可以使用子类UIApplication
并覆盖
- (void)sendEvent:(UIEvent *)event
私有UIEvent头声明了以下方法
- (GSEventRef)_gsEvent;
GSEventRef
在名为GraphicsServices的私有框架中声明。如果您能为您的活动找到有用的信息,请查看那里。
我会尝试从_GSEventGetGSEventRecord
记录一些标记。
你可以四处寻找,但如果你需要特定的东西,请确保你提交rdar://
。
如果您需要使用私有内容,请编写代码,以便在内容发生变化时不会中断(或者在没有崩溃的情况下中断)。