我有一个文本字段,它运行计算并在编辑更改时更新标签。使用 textField 为货币格式化文本字段:shouldChangeCharactersInRange:
标签也针对货币进行了格式化。
在 IOS 5 中,标签会随着在文本字段中输入数字而更新。
在 IOS 6 中,标签不会更新,直到在不同的文本字段中输入值。
在 IOS 6 或 Xcode 4.5 中是否有任何更改使 Editing Changed 或 textField: shouldChangeCharactersInRange: 工作方式不同?
最佳答案
是的,我只是注意到了同样的事情——请注意,只有当 shouldChangeCharactersInRange 返回“NO”时,editingChanged 才会被调用——即便如此,我怀疑这是一个错误,应该报告给 Apple。 EditingChanged 事件只是 UITexField 继承自 UIControl 的一个事件,我不明白为什么 Apple 应该阻止它工作,即使 shouldChangeCharactersInRange 返回“NO”文本字段应该知道是否进行了更改。
我正在做的是将我的代码从 editingChanged 事件直接移动到 shouldChangeCharactersInRange 方法中。意思是,在我返回“NO”的地方,我嵌入了我想在 editingChanged 事件中调用的代码。应该适用于大多数情况。希望这会有所帮助。
关于iphone - 编辑更改在 IOS5 中有效,但在 IOS6 中无效。文本字段 : shouldChangeCharactersInRange:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13000147/