为啥 iPad 不会在结束编辑时关闭选择器视图但 iPhone 会

Posted

技术标签:

【中文标题】为啥 iPad 不会在结束编辑时关闭选择器视图但 iPhone 会【英文标题】:Why does iPad does not dismiss picker view on end edit but iPhone does为什么 iPad 不会在结束编辑时关闭选择器视图但 iPhone 会 【发布时间】:2019-02-25 16:00:29 【问题描述】:

我已将UIPickerView 设置为文本字段的输入视图,在选择器选择时,我使用view.endEditing(true)。这将关闭 iPhone 上的键盘。但在 iPad 上,什么也没有发生。我必须通过调用该方法从超级视图中删除选择器视图。考虑到两者都运行相同版本的操作系统,造成这种差异的原因是什么? 还有没有提到这些差异,以便我可以在两个设备上使用相同的方法。

【问题讨论】:

【参考方案1】:

键盘没有被解除的原因是因为某些 View 会拦截这些事件,而不是因为 endEditing 不起作用。

尽管如此,您可以全局关闭键盘,这可能是一个简单的方法:

UIApplication.shared.sendAction(#selector(UIResponder.resign‌​FirstResponder), to: nil, from: nil, for: nil)

你有一个美好的一天!

【讨论】:

以上是关于为啥 iPad 不会在结束编辑时关闭选择器视图但 iPhone 会的主要内容,如果未能解决你的问题,请参考以下文章

浓缩咖啡:为啥旋转器在选择后不关闭?

关闭 popOver

按下完成按钮时,PickerView 不会关闭

为啥我收到 CIFilter 的“无法识别的选择器发送到类”错误?

处理 MFMailComposeViewController 不会带回我在 iPhone 上的旧视图,但可以在 iPad 上使用

基于文档的应用程序的 iPad ViewController 配置