例: 如果是这样判断:
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
// 不让输入表情
if (![NSString stringValidateEmoji:symptomTextView.text]) {
return NO;
}
}
return YES;
}
就会出现删除键失灵的问题,换用如下方法可解决:
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
// 不让输入表情
if ([textView isFirstResponder]) {
if ([[[textView textInputMode] primaryLanguage] isEqualToString:@"emoji"] || ![[textView textInputMode] primaryLanguage]) {
kDLOG(@"输入的是表情,返回NO");
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"提示" message:@"不能输入表情" delegate:self cancelButtonTitle:nil otherButtonTitles:@"确定",nil];
[alertView show];
return NO;
}
}
return YES;
}