2011-08-16 22 views
0

我烧成updateFindName方法,通过它连接到IB的Editing Changed事件改变。问题是,该方法似乎记录在UITextFielduiFindName实际改变之前解雇。我想,当用户将清除uiFindName所有文字更新uiFindNameLabel的文字uiFindName的占位符文本,确实如此,但只有在另一个字符键入到uiFindName。有小费吗?文本之前编辑而改变IB事件触发在为UITextField

- (IBAction)updateFindName:(id)sender { 
    if ([uiFindNameLabel.text isNotEmpty]) { 
     uiFindNameLabel.text = uiFindName.text; 
    } else { 
     uiFindNameLabel.text = uiFindName.placeholder; 
    } 
} 

注意,isNotEmpty只是检查空字符串的方法。

+0

我不知道我是否理解你的问题,尝试编辑是否开始/结束 – Neelesh

+0

我有一个在IB中设计的UILabel(uiFindNameLabel)和UITextField(uiFindName)。我已经链接UITextField的“Editing Changed”outlet来执行上面的方法(updateFindName)。问题是,当我删除的UITextField,所有字符“uiFindNameLabel.text = uiFindName.placeholder;”直到我在该领域输入某些东西时才执行该行。 – Rhuantavan

+0

是被称为“如果”正确的条件中的每个字符,当你的关键? – Neelesh

回答

0

您可以使用UITextField的委托方法– textField:shouldChangeCharactersInRange:replacementString:

在那里您可以确定输入的字符应该是之后的文字之前的

相关问题