UITextField限制字符

今天試了下怎麼限制UITextField輸入時的字符

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string

發現超過界限後按回刪減用不了


用下面這個方法就可以,並給textField添加方法

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


- (void)textFieldDidChange:(UITextField *)textField

{

    if (textField == txName) {

        

        UITextRange *selectedRange = [textField markedTextRange];

        NSLog(@"selectedRange%@",selectedRange);

        if (selectedRange==nil) {

            NSLog(@"selectedRange == nil%@",selectedRange);

            if ([textField.text length]>20) {

                textField.text = [textField.text substringToIndex:20];

            }

        }

    }

    

}

此方法解決了輸入中文是可以持續輸入中文的問題



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章