如何在UITextView textViewDidBeginEditing中手动显示/停止键盘

时间:2018-10-20 21:25:02

标签: ios swift uitextview uialertcontroller

textViewDidBeginEditing中,我正在做一些检查以显示Alert。我的问题是键盘和警报都同时显示。我不希望在显示警报时显示键盘。当我必须显示“警报”并且一旦解除警报后,是否可以停止在textViewDidBeginEditing内显示键盘?

如果不是,我们如何通过其他解决方法来实现它?

2 个答案:

答案 0 :(得分:0)

view.endEditing(true)中调用textViewDidBeginEditing函数,但键盘未显示。我认为这会起作用。

答案 1 :(得分:0)

  1. 将UITextView的isEditable属性设置为false。
  2. 可能使用UITapGestureRecognizer检测UITextView上的水龙头(如果用户要开始编辑,这就是该操作),并检查水龙头坐标是否在UITextView的框架内。
  3. 这时,键盘将不会显示。您可以进行所需的检查,并根据检查是否通过来使键盘显示(将UITextView的isEditbale设置为true并将其设置为firstResponder)。
  4. 用户完成编辑后,如果要重复类似的操作,请重置状态。