点击textView时会发生什么的简短视频: https://www.youtube.com/watch?v=LG_r3iDJKiM
我正在尝试从textViewDidBeginEditing函数在UITextView上显示我的自定义键盘。自定义键盘已经在UITextFields上进行了测试,并且正在按预期工作。现在我正在尝试使用相同的键盘来使用UITextViews。 第一次打开应用程序时,第一次点击textView会出现这种情况,然后当我们点击其他textView时,自定义键盘会直接按预期显示。
我的TextViewDidBeginEditing中的当前代码,我尝试更改最后4行的顺序,但没有成功:
public func textViewDidBeginEditing(_ textView: UITextView) {
keyboard = Keyboard.sharedInstance.keyboardWithType(availableKeyboards.numbers.rawValue, returnKey:textView.returnKeyType, isSecure: false,decimalSeparator:self.decimalSeparatorCharacter, responderClass: self)
inputView.keyboardAppearance = .dark
inputView.hideAssistantBar()
inputView.inputView = keyboard
inputView.reloadInputViews()
}
这将导致上面的视频,我尝试了其他一些方法,但还没有成功:
将空UIView设置为inputView,这仍然会导致苹果键盘短暂出现
let view:UIView = UIView()
textView.inputView = view
也试过做reloadInputViews,但这也不起作用:
textView.reloadInputViews()
还尝试在主踏板上运行
DispatchQueue.main.async { }
但没有成功,我无法理解为什么即使设置一个UIView()作为inputView仍然会很快显示苹果键盘。非常感谢任何正确方向的帮助!
提前致谢!