UITextField在输入时 其delegate会执行
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;
判断是否输入字符
[UITextInputMode currentInputMode] 可以获得当前的键盘输入模式,
如
[[UITextInputMode currentInputMode] primaryLanguage]是"emoji"时是表情符输入模式
所以这样写
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString*)string{
if ([[[UITextInputMode currentInputMode] primaryLanguage] isEqualToString:@"emoji"]) {
return NO;
}
return YES;
}
就可以阻止输入emoji这种特殊字符了。
另外,对于粘帖过来的字符,大家看看有无方法阻止。
本文介绍如何在 iOS 应用中使用 UITextField 的 delegate 方法来阻止用户输入 Emoji 表情符号,并提供了一个具体的实现示例。
3120

被折叠的 条评论
为什么被折叠?



