当从自动更正栏中选择一个单词时,不会调用 ios7 文本字段 shouldchangecharactersinrange

标签 ios objective-c uitextfield uikeyboard

UITextField shouldChangeCharactersInRange 当使用简体中文键盘从自动更正栏中选择单词时,不会调用 delegate 方法。当我键入“你好”时,此delegate 方法会为每个字符调用,但当我从自动更正建议栏中选择一个词时,不会调用此委托(delegate)方法。这仅在使用简体中文的 iOS 7 中发生,它在日文键盘上工作正常。我想在选择单词时执行特定于应用程序的操作。任何帮助深表感谢。

最佳答案

我今天遇到了同样的问题。我将其修复如下:

不要使用委托(delegate),只使用通知:

[[NSNotificationCenter defaultCenter] addObserver:self 选择器:@选择器(文本更改:) 名称:UITextFieldTextDidChangeNotification 对象:无];

关于当从自动更正栏中选择一个单词时,不会调用 ios7 文本字段 shouldchangecharactersinrange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19951827/

相关文章:

ios - Swift 的 Obj-c 代码 - NSDateFormatter

ios - 无法使用 PathProvider 依赖项构建 flutter 项目

objective-c - 如何在 NSTableView 中显示行数

iphone - 使文本框再次成为第一响应者

ios - 如果文本为空,UITableViewCell detailTextLabel 不支持 KVO?苹果漏洞?

ios - 启用后禁用 allowsBackgroundLocationUpdates (CLLocationManager) 不起作用

ios - 使用dispatch_group_async从嵌套异步调用获取通知

ios - 将 NSArray 的内容保存为纯文本文件而不是 xml

objective-c - ARC 中的 "Fire and forget"类

iphone - 有没有办法确定何时在UITextField中输入语音文本?