收集了iOS9.2的所有emoji字符,禁止UITextView和UITextField的emoji字符输入。
#import <Foundation/Foundation.h> @interface StringUtils : NSObject + (void) deleteEmojiForTextView:(UITextView *)textView; + (void) deleteEmojiForTextField:(UITextField *)textField; @end
#import "StringUtils.h" @implementation StringUtils #define EMOJI @"...";//表情符号参考附件 + (void) deleteEmojiForTextView:(UITextView *)textView { NSString *string = textView.text; if(![self stringContainsEmoji:string]){ return; } __block NSString *noEmoji = string; [string enumerateSubstringsInRange:NSMakeRange(0, [string length]) options:NSStringEnumerationByComposedCharacterSequences usingBlock: ^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) { NSString *emojiEmotions = EMOJI; if([emojiEmotions rangeOfString:substring].location!=NSNotFound){ noEmoji = [noEmoji stringByReplacingOccurrencesOfString:substring withString:@""]; } }]; textView.text = noEmoji; } + (void) deleteEmojiForTextField:(UITextField *)textField { NSString *string = textField.text; if(![self stringContainsEmoji:string]){ return; } __block NSString *noEmoji = string; [string enumerateSubstringsInRange:NSMakeRange(0, [string length]) options:NSStringEnumerationByComposedCharacterSequences usingBlock: ^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) { NSString *emojiEmotions = EMOJI; if([emojiEmotions rangeOfString:substring].location!=NSNotFound){ noEmoji = [noEmoji stringByReplacingOccurrencesOfString:substring withString:@""]; } }]; textField.text = noEmoji; } + (BOOL)stringContainsEmoji:(NSString *)string { __block BOOL returnValue = NO; //__block NSString *noEmoji = string; [string enumerateSubstringsInRange:NSMakeRange(0, [string length]) options:NSStringEnumerationByComposedCharacterSequences usingBlock: ^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) { //const unichar hs = [substring characterAtIndex:0]; NSString *emojiEmotions = EMOJI; // NSLog(@"size=%ld",emojiEmotions.length); // NSLog(@"size2=%d",strlen([emojiEmotions UTF8String])); // NSLog(@"sub=%@",substring); if([emojiEmotions rangeOfString:substring].location!=NSNotFound){ NSLog(@"===>>>>>emoji"); returnValue = YES; *stop = YES; } }]; return returnValue; } @end
原创文章,转载请注明出处。
相关推荐
iOS系统风格的Emoji表情图片,图片大小72x72,png后缀,共3184个,Emoji的版本为v13.0。压缩包内提供PHP的使用示例,文档生成于2020年3月2日。
android 输入框EditText禁止输入Emoji表情符,博客地址:http://blog.csdn.net/elsdnwn/article/details/45390771
iOS下的开源Emoji键盘
iOS emoji大全 plist文件
DEMO + 表情码提取,对于多个平台想共享IOS中的EMOJI编码,可以进行快速导出。
IOS8 细黑字体+EMOJI超大表情,黑白EMOJI表情
Android中emoji的处理以及和iOS端互通 一个简单的demo
ios开发emoji编码对应的plist文件
自己写的解析即时通信聊天时接受到的带表情和普通文本的消息,一句代码完成解析并转成富文本给UILabel和UITextView显示
最近刚把emoji表情整理完,这里是我的一些自己的心得。开始做的时候,我是通过Unicode对emoji的表情一个一个的读取,但有些表情他们分布的比较乱,而且对应有的是两个Unicode组合而成(比如国旗),在转换之间会挺...
让 Intellij 支持 Emoji 输入提醒.zip,支持emoji完成的intellij插件
使用js处理ios或android输入的emoji表情符号使用js处理ios或android输入的emoji表情符号使用js处理ios或android输入的emoji表情符号
Android的EditText中加入emoji表情包,可实现文字字符和表情混显
iOS 表情类 Emoji ,Emoji 是一个用来快速访问各种表情图片的类,类包含静态方法可直接返回表情的字符串。
EmojiTextView:好玩的 Tap 文本即转 Emoji 输入组件,灵感来源于iOS 10中的 Messages.app。
表情符号数据iOS例要运行示例项目,请克隆存储库,然后首先从Example目录运行pod install 。要求Xcode 10和Swift 4.2安装emojidataios可通过。 要安装它,只需将以下行添加到您的Podfile中: pod "emojidataios"如何...
Emoji 是一套起源于日本的12×12像素表情符号,由栗田穣崇(Shigetaka Kurit)创作,最早在日本网络及手机用户中流行,自苹果公司发布的iOS 5输入法中加入了emoji后,这种表情符号开始席卷全球,目前emoji已被大多数...
Android 中Emoji表情 demo演示 文字emoji混合输入 OK Eclipse 中demo 实现 * 1、点击emoji 显示emoji代码 用户在数据库中存储 * 2、edittext 中显示、文字、emoji混合输入 【参考代码】...