在应用程序的文本视图/文本字段中选择文本(例如,消息)后,您可以从弹出菜单中选择Share
以共享文本。由于您在选择/共享时编辑文本,因此键盘可见。选择共享目标应用后,当目标应用的扩展程序出现时,键盘将继续显示。我需要关闭此键盘,以便屏幕上的其他元素可见且可访问。在我的情况下,我在扩展中出现的自定义视图控制器中没有可编辑的字段(例如textField / textView)。 (即成为第一个响应者)
通常不起作用的解决方案:
[self.view endEditing:YES]
- 我的观点中没有子视图是firstResponder [self.textView resignFirstResponder]
- 我的视图中没有textView / textField(https://stackoverflow.com/a/28119785/650365)[[[UIApplication sharedApplication] keyWindow] endEditing:YES]
- sharedApplication
在分享扩展程序中不可用[theViewController setEditing:NO animated:YES]
可行的Hacky解决方案(来自https://stackoverflow.com/a/34299724/650365):
becomeFirstResponder
。resignFirstResponder
。如何在不添加额外textField / textViews的情况下关闭iPhone上的共享扩展程序中的键盘?