UITextField文本框卡控:只能输入数字

在iOS开发时,设置textField.keyboardType = UIKeyboardTypeNumberPad;这个属性弹出的键盘就是数字键盘,但是在iPad开发中博主也设置了此属性,但是键盘却可以切换为ABC英文状态,此时卡控住只能输入数字如下其中一个代理方法

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

{
    BOOL canChange =YES;
    //账号只能输入数字
    NSCharacterSet * cs;
    cs = [[NSCharacterSetcharacterSetWithCharactersInString:@"0123456789\n"]invertedSet];
    NSString * filtered = [[stringcomponentsSeparatedByCharactersInSet:cs]componentsJoinedByString:@""]; 
    canChange = [stringisEqualToString:filtered];
    textField.clearButtonMode =UITextFieldViewModeWhileEditing;
    textField.returnKeyType =UIReturnKeyDone;
    textField.keyboardType =UIKeyboardTypeNumberPad;
    return canChange;
}


你可能感兴趣的:(UITextField)