在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;
}