【发布时间】:2017-08-04 00:54:45
【问题描述】:
我的情况总结
我的应用程序使用充当外部键盘的条形码扫描仪。在特定视图上,我希望在不存在任何键盘的情况下选择隐藏的文本字段。然后我可以让条形码扫描仪将数据发送到这个文本字段。
我使用的是 iPad Air 2。
到目前为止我做了什么
我已将文本字段 inputView 和 inputAccessoryView 设置为空 UIViews。
_barcodeText.inputView = [[UIView alloc] initWithFrame:CGRectZero];
_barcodeText.inputAccessoryView = [[UIView alloc] initWithFrame:CGRectZero];
我已尝试通过删除文本字段委托方法中的 UIRemoteKeyboardWindow 来解决此问题,但此解决方案似乎非常不一致,并且可能会在我的应用程序的其他部分引起更多问题。我用来执行此操作的代码如下:
// LOOP THROUGH WINDOWS
for(NSObject *window in [[UIApplication sharedApplication] windows]){
// GET CLASS NAME
NSString *name = NSStringFromClass([window class]);
// CHECK FOR KEYBOARD WINDOW
if([name isEqualToString:@"UIRemoteKeyboardWindow"]){
// REMOVE KEYBOARD
[(UIWindow*)window removeFromSuperview];
[(UIWindow*)window setHidden:true];
}
}
【问题讨论】:
标签: ios objective-c ipad keyboard uitextfield