浏览 1738 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-01-12
// // CCEmoji.m // CCFC // // Created by xichen on 11-12-23. // Copyright 2011 ccteam. All rights reserved. // #import "CCEmoji.h" #import "CCUITextView.h" @implementation CCEmoji // returns a textView that contains nearly all the emojis + (UITextView *)returnAllEmojiTextView { NSMutableString *s = [[NSMutableString alloc] initWithString: @"This is a smiley \ue415 \ue533 face\n"]; // ee8081 ~ ee94b7 unsigned char str[] = {0xee, 0x80, 0x80, 0}; unsigned char secondByte[] = {0x80, 0x81, 0x84, 0x85, 0x88, 0x89, 0x8c, 0x8d, 0x90, 0x91, 0x94}; int secondByteLen = sizeof(secondByte) / sizeof(secondByte[0]); NSLog(@"secondByteLen is %d", secondByteLen); for(int j = 0; j < secondByteLen; ++j) // get nearly all emoji info { str[1] = secondByte[j]; if(str[1] == (unsigned char)0x80) { for(int i = 1; i <= (0xbf - 0x80); ++i) { str[2] += (unsigned char)i; [s appendFormat:@"0xee%x%x:", (int)str[1], (int)str[2]]; [s appendString:[NSString stringWithUTF8String:(const char *)str]]; [s appendString:@"\r"]; str[2] = 0x80; } } if(str[1] == (unsigned char)0x81) { for(int i = 0; i <= (0x9a - 0x80); ++i) { str[2] += (unsigned char)i; [s appendFormat:@"0xee%x%x:", str[1], str[2]]; [s appendString:[NSString stringWithUTF8String:(const char *)str]]; [s appendString:@"\r"]; str[2] = 0x80; } } if(str[1] == (unsigned char)0x84 || str[1] == (unsigned char)0x8c || str[1] == (unsigned char)0x90) { for(int i = 1; i <= (0xbf - 0x80); ++i) { str[2] += (unsigned char)i; [s appendFormat:@"0xee%x%x:", str[1], str[2]]; [s appendString:[NSString stringWithUTF8String:(const char *)str]]; [s appendString:@"\r"]; str[2] = 0x80; } } if(str[1] == (unsigned char)0x85) { for(int i = 0; i <= (0x9a - 0x80); ++i) { str[2] += (unsigned char)i; [s appendFormat:@"0xee%x%x:", str[1], str[2]]; [s appendString:[NSString stringWithUTF8String:(const char *)str]]; [s appendString:@"\r"]; str[2] = 0x80; } } if(str[1] == (unsigned char)0x88) { for(int i = 1; i <= (0xbf - 0x80); ++i) { str[2] += (unsigned char)i; [s appendFormat:@"0xee%x%x:", str[1], str[2]]; [s appendString:[NSString stringWithUTF8String:(const char *)str]]; [s appendString:@"\r"]; str[2] = 0x80; } } if(str[1] == (unsigned char)0x89) { for(int i = 0; i <= (0x93 - 0x80); ++i) { str[2] += (unsigned char)i; [s appendFormat:@"0xee%x%x:", str[1], str[2]]; [s appendString:[NSString stringWithUTF8String:(const char *)str]]; [s appendString:@"\r"]; str[2] = 0x80; } } if(str[1] == (unsigned char)0x8d) { for(int i = 0; i <= (0x8d - 0x80); ++i) { str[2] += (unsigned char)i; [s appendFormat:@"0xee%x%x:", str[1], str[2]]; [s appendString:[NSString stringWithUTF8String:(const char *)str]]; [s appendString:@"\r"]; str[2] = 0x80; } } if(str[1] == (unsigned char)0x91) { for(int i = 0; i <= (0x8c - 0x80); ++i) { str[2] += (unsigned char)i; [s appendFormat:@"0xee%x%x:", str[1], str[2]]; [s appendString:[NSString stringWithUTF8String:(const char *)str]]; [s appendString:@"\r"]; str[2] = 0x80; } } if(str[1] == (unsigned char)0x94) { for(int i = 1; i <= (0xb7 - 0x80); ++i) { str[2] += (unsigned char)i; [s appendFormat:@"0xee%x%x:", (int)str[1], (int)str[2]]; [s appendString:[NSString stringWithUTF8String:(const char *)str]]; [s appendString:@"\r"]; str[2] = 0x80; } } } UITextView *textView = [UITextView createCommonTextView:CGRectMake(0, 60, 320, 260) withText:s]; [s release]; return textView; } @end googlecode链接地址(会有更新):http://code.google.com/p/iphone-common-codes-ccteam/source/browse/trunk/CCFC/files/CCEmoji.m 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |