私はUITextField
を持っていますが、最大テキスト長は20にしたいと思います。したがって、現在のビューコントローラは<UITextFieldDelegate>
に同意し、テキストフィールドのデリゲートとして、そして最大の長さを設定するには、次のメソッドを使用します。私は、この関数にブレークポイントを挿入したときtextField:shouldChangeCharactersInRange:replacementString:UITextFieldに入力するときに呼び出されない
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
if (textField == self.nickNameTextField)
{
if (textField.text.length > 20)
return NO;
}
return YES;
}
は、しかし、私はずっと、私はどんな言葉で入力したとき、この関数が呼び出されなかったことがわかりましたテキストの長さが20を超えるときは、より少ない。
デリゲートが 'UITextField'に対して正しく設定されているかどうかを確認してください。また、名前の代わりにタグを使用することをお勧めします。 –
@ManjulShresthaええ、私は 'viewDidLoad'のテキストフィールド'代理人 'を設定しました – Caesar
テキストフィールドをどのようにインスタンス化しますか? –