2016-05-09 9 views
0

UITextFieldSecure Text Entryを使用すると、テキストを入力したときにテキストが上書きされ、別のテキストフィールドに戻り、今UITextFieldのセキュリティで保護されたテキストエントリの上書きを検出する

、イムは、入力したテキストを追跡するために、以下のものを使用して:

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

しかし、上記の場合には、イベントがテキストフィールドには、私は常に文字列に頼ることができないので、クリアされたことを追跡does notのtext

良いヒント?

+0

を選択します。 – iOS

+0

を使用してテキストフィールドをクリアしようとしています - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField; – iOS

+0

@Darji私はテキストを意図的に隠す 'Secure Text Entry'を使用しています。 – 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

関連する問題