Objective C - UITextFieldTextDidChangeNotification 没有响应更正选择

Posted

技术标签:

【中文标题】Objective C - UITextFieldTextDidChangeNotification 没有响应更正选择【英文标题】:Objective C - UITextFieldTextDidChangeNotification not responding to correction selection 【发布时间】:2018-03-18 20:05:00 【问题描述】:

在我的应用中,我在注册时为用户的邮政编码设置了一个简单的文本字段:

我正在监听文本字段的更改:

[self.zipCode addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];

但是,如果用户开始输入并且他们的邮政编码显示为键盘上方的建议,则当用户点击该建议时不会调用 textFieldDidChange:。

我应该监听什么控制事件以包括选择的键盘建议?

【问题讨论】:

我创建了一个新项目并尝试了您的代码。当你点击建议时,textFieldDidChange: 会被调用。再次检查您的项目,可能问题来自其他地方。 【参考方案1】:

我检查了你的代码,它工作正常。

textFieldDidChange: 没有接到电话,这意味着有问题。所以请检查。

所以请检查:

1) 在您的班级中添加UITextFieldDelegate

2)self.zipCode.delegate = self;

注意:确保您没有以编程方式创建 self.zipCode 所以您必须检查您的 textfield 与情节提要的连接。

如果您需要更多帮助,可以问我:)

【讨论】:

以上是关于Objective C - UITextFieldTextDidChangeNotification 没有响应更正选择的主要内容,如果未能解决你的问题,请参考以下文章

Objective-C:点击 UIDownPicker 并获取 UITextfield 的值

Objective-c,如何在 UIAlertView 上添加 UITextField

如何在不同的 Objective-C 类中调用 UITextField 委托方法?

在 UITextField 键盘中启用“返回按钮”(objective-c/iphone)

Objective-C -[__NSArrayM insertObject:atIndex:]: 索引 2 超出边界 [0 .. 0]' 用于 UITextField

如何在 Objective-C 中的 UITextField 中每次更改后调用一个动作?