本文源自本人的学习记录整理与理解,其中参考阅读了部分优秀的博客和书籍,尽量以通俗简单的语句转述。引用到的地方如有遗漏或未能一一列举原文出处还望见谅与指出,另文章内容如有不妥之处还望指教,万分感谢。
今天开发遇到一个问题,在UITextField输入框中输入字母单击时会提示未找到替换文本的提示;起初以为是系统提示没在意,后期测试时发现这个提示出现后无法点击移动光标位置了;这是个bug !
解决历程:各种自定义UITextField重写- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
方法判断不是想要的就返回NO; 结果发现不行,这个是系统内部弹出的;我们控制不了,最多就可以禁止弹出UIMenuController,但这不并不能解决问题,于是。。。。。。。。
最终想到这会不会是键盘默认的自动更正
,因为我输入的字母都不是单词
,于是就直接去设置中找键盘的相关配置,结果就看到了自动更正和检查拼写这俩选项,瞬间就明白了!
找到问题出现的原因解决起来就简单了两行代码搞定:
textField.autocorrectionType = UITextAutocorrectionTypeNo;//关闭自动更正
textField.spellCheckingType = UITextSpellCheckingTypeNo; //关闭检查拼写