1、swift 限制特殊字符串输入
参考链接
https://blog.csdn.net/weixin_34258838/article/details/88178375
2、swift textfield/textview 限制输入框粘贴字数
思路:通过通知来实现
下面是textfield的例子 UITextViewTextDidChangeNotification
textview照葫芦画瓢 通知名字不要错了 UITextViewTextDidChangeNotification
红线框内缺一不可
overrideinit(style:UITableViewCell.CellStyle, reuseIdentifier:String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
// textfield的限制为15个字数,当输入完前14个字的时候,最后一个中文字,打出拼音的第一个英文字母时,就会被截取,导致最后一个中文字永远无法正确拼写出来 的解决办法https://www.jianshu.com/p/51443f279ef1
NotificationCenter.default.addObserver(self, selector:
#selector(self.greetingTextFieldChanged), name: NSNotification.Name(rawValue:"UITextFieldTextDidChangeNotification"),
object:self.detailTextfield)
setupUI()
}
@objcfuncgreetingTextFieldChanged(obj:Notification) {
lettextField:UITextField= obj.objectas!UITextField
guardlet_:UITextRange= textField.markedTextRangeelse{
/// 去除特殊字符 (只可输入部分英文半角特殊格式)
letstr = textField.text??""
textField.text= str.deleteSpecialCharacters()
if(textField.text!asNSString).length>15{
textField.text= (textField.text!asNSString).substring(to:15)
}
return
}
}
deinit{
NotificationCenter.default.removeObserver(self, name:
NSNotification.Name(rawValue:
"UITextFieldTextDidChangeNotification"), object: self.detailTextfield)
}
网友评论