2016-05-09 32 views
0

在中使用Secure Text Entry时,如果我输入了文本,转到另一个文本字段并返回并开始写入而没有按回,文本将被覆盖。检测UITextField安全文本输入覆盖的文本

现在,进出口使用下面的跟踪输入的文字:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string 
{ 
    NSString *text = [textField.text stringByReplacingCharactersInRange:range withString:string]; 
} 

但在上述情况下,事件犯规跟踪文本字段已这样清除我不能总是依赖于字符串text

任何好的提示?

+0

当你在文本框始终输入文本时明确文本框。 – iOS

+0

尝试使用 清除文本字段 - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField; – iOS

+0

@Darji我正在使用'安全文本输入',它将隐藏我的文本为默认。 – Nam

回答

2

好吧,我只是改变了逻辑轨道文本框与此事件,而不是改变:

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

textFieldDidChange每次将文本更改调用。

+0

好抓!深思熟虑 –

+0

真正的生活节省。谢了哥们。我真的很感激。 :) – Tulon

0

我可以告诉你一个简单的方法来在xcode本身做到这一点。

Select <code>Clear when editing begins</code> checkbox

选择Clear when editing begins复选框

Select <code>Secure</code> checkbox

选择Secure复选框

+0

这不会工作 - 文本是不正确的'shouldChangeCharactersInRange' – Nam