我正在为 iOS 开发一个自定义键盘,它将有自己的搜索字段(类似地由 PopKey 实现)。
我的键盘的文本字段能够获得焦点,becomeFirstResponder
我可以通过使用resignFirstResponder
. 但是,在我放弃焦点后,尽管触摸了表单,但主机应用程序很难重新获得焦点。该应用程序的文本字段仍将显示文本光标闪烁。
有任何想法吗?谢谢
我正在为 iOS 开发一个自定义键盘,它将有自己的搜索字段(类似地由 PopKey 实现)。
我的键盘的文本字段能够获得焦点,becomeFirstResponder
我可以通过使用resignFirstResponder
. 但是,在我放弃焦点后,尽管触摸了表单,但主机应用程序很难重新获得焦点。该应用程序的文本字段仍将显示文本光标闪烁。
有任何想法吗?谢谢
解决方案是一种 hack,到目前为止,您还不能真正将主机应用程序的焦点重新归还给主机应用程序。
子类 aUITextField
并在其委托上
textFieldShouldBeginEditing
通过返回来实现NO
。
添加一个设置为in的BOOL
属性(不要与默认属性混淆)isSelected
YES
touchesBegan
selected
keyPressed
方法中,如果searchField.isSelected
,操作searchField.text
. 否则,像平常一样操作textDocumentProxy
。clear
按钮和方法来擦除searchField.text
和searchField.isSelected
,允许任何进一步的击键返回到textDocumentProxy