我通过将updateFindName
方法链接到IB中的Editing Changed
事件来触发它。问题是该方法似乎在记录UITextField
uiFindName
中的实际更改之前触发。当用户清除uiFindNameLabel
中的所有文本时,我希望将uiFindName
的文本更新为uiFindName
的占位符文本,并且确实如此,但只有在另一个字符输入{{ {1}}。有什么提示吗?
uiFindName
注意,- (IBAction)updateFindName:(id)sender {
if ([uiFindNameLabel.text isNotEmpty]) {
uiFindNameLabel.text = uiFindName.text;
} else {
uiFindNameLabel.text = uiFindName.placeholder;
}
}
只是检查空字符串的方法。
答案 0 :(得分:0)
您可以使用UITextField
的委托方法– textField:shouldChangeCharactersInRange:replacementString:
。
在那里,您可以确切地确定输入的字符应该是之前和 之后的文字。