我们有一个特定的程序,用户可以在数字键盘上键入数字,也可以在accessible view上键入按钮。因此,如果他在视图上键入了特定的按钮,则我想保持键盘处于打开状态,但禁用它,而可访问的视图仍处于打​​开状态并可以工作。

因此,例如,如果他在视图上键入“ A”,我想在数字键盘仍处于打开状态时禁用它,直到他键入“ C”,然后它将再次启用。

我找不到禁用它并保持打开状态的方法。

最佳答案

正如Losiowaty在评论中指出的那样,您应该实现名为UITextViewDelegateshouldChangeTextIn:replacementText:委托方法,并返回false。这样,键盘将可以识别出敲击,但从技术上讲这些按钮将被禁用。

func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
    //other actions before returning, for e. g. informing the user that the keyboard is disabled

    return false
}

09-30 12:37