为了账号安全,请及时绑定邮箱和手机立即绑定

IOS textField怎样设置只能输入英文字母或者数字,不能输入汉字

IOS textField怎样设置只能输入英文字母或者数字,不能输入汉字

九州编程 2019-04-19 15:59:06
RT,要弄个输入车牌后5位字符的输入框,车牌后5位只能有数字和字母,我在网上找了很多方法,都有些问题,要么就全都能输入,要么就只能输入数字,要么就到输入到5位后无法修改输入的东西,所以向大家求助,有没有什么方法可以限定输入框不能输入中文的我现在用的这个方法//设置键盘类型self.textField.keyboardType=UIKeyboardTypeASCIICapable;definekAlphaNum@"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"//判断是否是数字,不是的话就输入失败-(BOOL)textField:(UITextField*)textFieldshouldChangeCharactersInRange:(NSRange)rangereplacementString:(NSString*)string{NSCharacterSet*cs;cs=[[NSCharacterSetcharacterSetWithCharactersInString:kAlphaNum]invertedSet];NSString*filtered=[[stringcomponentsSeparatedByCharactersInSet:cs]componentsJoinedByString:@""];//按cs分离出数组,数组按@""分离出字符串BOOLcanChange=[stringisEqualToString:filtered];returnself.textField.text.length>=5?NO:canChange;}这个方法输入满5位后就无法删除修改了求教
查看完整描述

2 回答

?
大话西游666

TA贡献1817条经验 获得超14个赞

要判断存在的内容加上要输入的内容是否>=5才可以
加上后面的代码可以运行了
NSUIntegernewLength=textField.text.length+string.length-range.length;
returnnewLength>=5?NO:canChange;
                            
查看完整回答
反对 回复 2019-04-19
  • 2 回答
  • 0 关注
  • 2081 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信