【问题标题】:Hide keyboard key (bottom right key) is not working when we use inputAccessoryView当我们使用 inputAccessoryView 时隐藏键盘键(右下键)不起作用
【发布时间】:2014-01-06 14:58:04
【问题描述】:

我正在开发一个使用蓝牙条形码扫描仪的 iPad 应用程序。我将扫描仪连接为使用 HID 配置文件,它被 iPad 视为蓝牙键盘。当扫描仪使用蓝牙连接到 iPad 时,如果我们专注于应用程序内的任何文本字段,它不会打开设备虚拟键盘。这是预期的,因为设备将条形码扫描仪视为蓝牙键盘。

为了显示一些用于手动输入的文本字段的设备虚拟键盘,我们使用了 inputAccessoryView。这工作正常,但是当设备连接到蓝牙键盘时,键盘右下角的键(用于隐藏键盘)不起作用。当我们点击“返回”键时,甚至当我们点击屏幕外的任何地方时,我都可以隐藏键盘。我不确定我们是否得到了这个隐藏键盘键的点击事件。

请告知我们是否可以解决此问题。

【问题讨论】:

    标签: ios objective-c ipad bluetooth keyboard


    【解决方案1】:

    您可以使用以下方法之一。不要忘记将委托添加到键盘 UITextFieldDelegate

    -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    {
        [textField resignFirstResponder];
    }
    
    
    
    -(BOOL) textFieldShouldReturn:(UITextField*) textField
    {
        [textField resignFirstResponder];
        return YES;
    }
    

    【讨论】:

    • 谢谢。 textFieldShouldReturn 已经存在并且正在工作。当我们点击“return”键时,键盘被隐藏了。现在我添加了 touchesBegan 并且仍然隐藏键单击不起作用。
    • 你使用 textFieldShouldEndEditing 了吗??
    • 试试这个 - (BOOL)disablesAutomaticKeyboardDismissal { return NO; }
    • 我刚刚尝试了 disablesAutomaticKeyboardDismissal 并且仍然无法正常工作。我想再添加一个观察结果。当我单击其他键时,有时(50 次中有 1 次)键盘会向上移动一点。之后,如果我们单击隐藏键,它就会起作用。在此之后,我尝试使用代码向上移动键盘,但这没有帮助。
    猜你喜欢
    • 2011-02-17
    • 1970-01-01
    • 2012-02-02
    • 1970-01-01
    • 2017-08-18
    • 1970-01-01
    • 2011-03-28
    • 2012-09-16
    • 2015-11-07
    相关资源
    最近更新 更多