如何防止键盘显示但允许粘贴 UITextView
Posted
技术标签:
【中文标题】如何防止键盘显示但允许粘贴 UITextView【英文标题】:How to prevent keyboard display but allow paste UITextView 【发布时间】:2015-10-05 18:42:11 【问题描述】:我有一个UITextView
,我希望允许用户粘贴但不能输入(不能复制或粘贴)但不显示键盘。我尝试了可编辑/可选择的行为,但它们不起作用。
我也在textViewShouldBeginEditing
方法中尝试过resignFirstRepsonder
。
所以任何人都可以帮助我。
【问题讨论】:
【参考方案1】:最简单的解决方案可能是完全自定义“粘贴”功能。例如,有一个根本不可选择/不可编辑的 UITextField,然后将“粘贴”按钮连接到这样的方法:
- (IBAction)paste
UIPasteboard *pb = [UIPasteboard generalPasteboard];
textField.text = [pb string];
这样,当他们按下按钮时,他们复制的任何文本都会出现在 TextField 中,但您不必担心键盘行为,因为用户实际上从未与之交互。
您甚至可以在用户选择 TextField 本身时执行上面的代码,然后简单地阻止键盘出现,但从 UI 的角度来看,这会违反直觉。最好有一个可供他们点击的按钮,而不是改变选择 TextField 的既定行为。
【讨论】:
这很奏效,我使用 textViewshouldBeginEdting 方法来执行该功能以上是关于如何防止键盘显示但允许粘贴 UITextView的主要内容,如果未能解决你的问题,请参考以下文章
显示键盘时防止 DialogFragment 调整大小/折叠