func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if type == .cameraName {
}else{
return true;
}
guard let text = textField.text else{
return true
}
//防止删除键无效
if string == ""{
return true;
}
//设置只能输入str后面字符串中的字符
let str = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@_:-. ";
var cs:NSCharacterSet = NSCharacterSet.init(charactersIn: str);
let str1 = string.components(separatedBy: cs as CharacterSet);
let str2 = str1.joined(separator: "");
let result = str2 == string;
print(result);
if result == true{
postValueBlock!();
}
//设置输入的长度不超过10
let textLength = text.characters.count + string.characters.count - range.length
return textLength<=10 && !result;
}
相关博客:
NSCharacterSet 简单用法
学会NSCharacterSet,再也不怕各种字符串处理!!
iOS字符串过滤字符–NSCharacterSet