关闭 IPAD 上的键盘
Posted
技术标签:
【中文标题】关闭 IPAD 上的键盘【英文标题】:Dismiss keyboard on IPAD 【发布时间】:2010-07-23 08:55:51 【问题描述】:Iphone 上 UITextField 的 ResignFirstResponder 似乎不适用于 Ipad。 如何以编程方式关闭我的键盘?
谢谢,
【问题讨论】:
【参考方案1】:在 ios 4.3 中,Apple 引入了上述方法,disablesAutomaticKeyboardDismissal
。它为 UIModalPresentationFormSheet 返回 YES,防止键盘关闭。
覆盖这个方法是可行的,但是如果你在 UINavigationController 中展示你的视图控制器,你必须继承 UINavigationController 并覆盖那里的方法。
我已经确认这确实适用于 iOS 6。请务必注意 UINavigationController 子句。
【讨论】:
还针对 iOS 7.0 进行了验证。 愚蠢的问题 - 如果你的 UINavigationController 在 XCode 5 的 Storyboard 中,你该怎么做?我没有看到任何可以更改的代码,以使用此类的覆盖副本..? 在 iOS 8 中你可以使用resignFirstResponder
,它会工作的。您不必乱用disablesAutomaticKeyboardDismissal
或类似的东西。【参考方案2】:
Now we can
- (BOOL)disablesAutomaticKeyboardDismissal
return NO;
【讨论】:
这似乎不再是 iOS 6 中的有效修复 - 其他人也看到了同样的情况? iOS 6.0.x 对我无效 担保...在 iOS 6 中无效 如果您在那里实现了该方法(显然您需要继承 UINavigationController),这曾经适用于在 navigationControllers 中呈现的 viewControllers。我不知道它是否仍然存在。 至少从 iOS 6 开始,除非您在UINavigationController
的子类中覆盖它,否则它不会起作用。帮助了我!【参考方案3】:
更新这个答案不再准确。请参阅correct answer。
如果您的 UITextField 处于模式页面表单视图 (UIModalPresentationFormSheet) 中,则(目前)无法强制设备从苹果工程师那里关闭键盘 this devforums post。
【讨论】:
以上是关于关闭 IPAD 上的键盘的主要内容,如果未能解决你的问题,请参考以下文章
从 uitableviewcell 内的文本字段中关闭 iPad 上的键盘
为啥 iPad 不会在结束编辑时关闭选择器视图但 iPhone 会
关闭时,横向iPad上带有键盘的模态视图控制器会更改位置[重复]