捕获没有textField的文本input
这里有一个问题的利弊…我正在开发一个应用程序在Ipad上,我用蓝牙条码阅读器。 我已经与我的Ipad同步条形码阅读器,我可以捕捉textField上的文本没有问题。 当我读条形码时,我不想把它放在textField上,我想把它放在一个类上,处理它,并决定如何处理它。 我在互联网上search的方式,但我找不到它。 有人可以帮助我吗? 我可以做一个类代表接收inputstring?
我有点失落,任何帮助对我来说都非常有用
谢谢你的时间!!
我已经解决了在创build视图控制器时创build隐藏文本字段成为第一响应者的问题。 在我做了相同的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条码断开键盘出现,这对我不好。 我希望我的视图始终没有键盘。 现在我来研究一下当键盘显示时是否调用这个函数,以防止他被显示出来
如果有人有任何build议,这将是有用的,但要感谢您的帮助埃里克!
你可以通过使用子类UIApplication
和覆盖来捕捉任何事件
- (void)sendEvent:(UIEvent *)event
私有的UIEvent头部声明以下方法
- (GSEventRef)_gsEvent;
GSEventRef
在名为GraphicsServices的私有框架中声明。 看看那里,如果你可以find有用的信息为您的事件。
我会尝试从_GSEventGetGSEventRecord
logging一些标志。
你可以捅了rdar://
,但是如果你需要特定的东西,请确保你提交了一个rdar://
。
如果你需要使用私有的东西,那么当你的代码改变了(或者不会崩溃)的时候,写下你的代码就不会中断。