在我的应用程序中,我有一个客户信息表单,其中有许多我使用过的文本字段,现在当用户编辑任何字段时我需要移动整个视图,以便编辑文本字段不会在iPad的内部键盘,这工作正常.
现在,客户希望使用外部蓝牙键盘填写此表单.一旦这个外部键盘与iPad连接,那么在编辑任何文本字段时在应用程序中将不会显示内部键盘,因为外部已连接,在这种情况下,整个视图需要在页面上,无需向上移动.
但是当我编辑文本字段时,它仍然会在屏幕上没有显示内部键盘的情况下上升,这会使整个视图向上移动时屏幕的一半空白.
为此,我尝试了一些方法,如启用内部键盘显示/隐藏通知,但这些通知仅在未连接外部键盘时调用,这对我没有帮助.
也尝试过使用ExternalAccessory框架,但它不会检测到蓝牙连接的键盘也尝试用EADemo来检测外部键盘并且它没有检测到外部键盘但它检测到信用卡刷卡连接槽底座.
如果此处的任何人已经通过此功能或知道与此相关的任何事情,请告诉我.
最佳答案 @SpySudhir –
逻辑A:
>在某个文件中有一个bool变量,当键盘是外部或内部时,它将返回yes / no值.
>在bool值的基础上返回调用动画函数.
逻辑B:
>使用NSNotificationCenter收听键盘通知.
>意志,显示,隐藏通知等通知将NSLog放在他们身上并查看其中哪一个被调用.
>如果连接了外部板,则不会调用willShow方法.所以在这种情况下,我们可以做一些解决方法并将bool值设置为no,或者我们可以有一个计数器,并且每次检查它的值是否增加一个或类似的东西.