ios - 是否可以在没有键盘的情况下选择 UITextField?

标签 ios objective-c ipad keyboard uitextfield

我的情况总结

我的应用程序使用充当外部键盘的条形码扫描器。在特定 View 上,我想在没有任何键盘的情况下选择一个隐藏的文本字段。然后我可以让条形码扫描器将数据发送到这个文本字段。

我使用的是 iPad Air 2。

到目前为止我做了什么

我已将文本字段 inputView 和 inputAccessoryView 设置为空 UIView。

_barcodeText.inputView = [[UIView alloc] initWithFrame:CGRectZero];
_barcodeText.inputAccessoryView = [[UIView alloc] initWithFrame:CGRectZero];

这主要是有效的,但是它留下了键盘的顶部: enter image description here

我曾尝试通过删除文本字段委托(delegate)方法中的 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];
            
    }
        
}

最佳答案

如果您的隐藏 UITextField 实际上永远不需要用户输入,只需将其设为隐藏的 UILabel,或者将数据存储在 String 变量而不是在任何 UI 对象中。

关于ios - 是否可以在没有键盘的情况下选择 UITextField?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42773270/

相关文章:

ios - 如何使用平移手势识别器在 ARSCNView 中移动节点?

ios - UICollectionViewLayout 和 NavigationBar - y 位置错误

objective-c - NSLog 在我幸运的 HelperTool 中不起作用

ios - 如何关闭自己的 View Controller 并在点击按钮时显示另一个 View Controller ?

iphone - 如何读取带媒体键的 USB 键盘的键码

ios - 如何在 Split ViewiOS中将不同的 View 加载到详细 View

ios - 慢速NSInputStream传递的NSURLSession请求体(带宽管理)

ios - 显示 PDF 内容时的 UIWebView 上下文菜单

ios - 存储 ios 离线抽认卡应用程序的单词

iphone - phonegap 插件,用于从库中选择视频