我已将所有uni-code(表情符号字符)存储在iphone支持的plist中。当我直接写作
- (IBAction)sendButtonSelected:(id)sender {
NSMutableArray *emoticonsArray = [[NSMutableArray alloc]initWithObjects:@"\ue415",nil];
NSString *imageNameToPass = [NSString stringWithFormat:@"%@",[emoticonsArray objectAtIndex:0]];
NSLog(@"imageNameToPass1...%@",imageNameToPass);
messageTextView.text =imageNameToPass;
}
它在textview中显示表情符号,但是一旦我从plist
获取NSString *plistPath1 = [[NSBundle mainBundle] pathForResource:@"unicodes" ofType:@"plist"];
NSDictionary *dictionary = [[NSDictionary alloc] initWithContentsOfFile:plistPath1];
activeArray= [dictionary objectForKey:categoryString];
NSLog(@"activeArray...%@",activeArray);
emoticonsArrayForHomeEmoji = [[NSMutableArray alloc]initWithCapacity:[activeArray count]];
for(int i=0; i<[activeArray count]; i++)
{
id objects = (id)[activeArray objectAtIndex:i];
[emoticonsArrayForHomeEmoji insertObject:objects atIndex:i];
}
NSString *imageNameToPass = [NSString stringWithFormat:@"%@",[emoticonsArrayForHomeEmoji
objectAtIndex:0]];
NSLog(@"imageNameToPass1...%@",imageNameToPass);
messageTextView.text =imageNameToPass;
然后它在文本视图中将unicode显示为text \ ue415而不是表情符号。
我做错了什么?请帮帮我!
答案 0 :(得分:2)
Wel说@AliSoftware,Plist数据将按原样读取,因此您可以按照以下步骤将表情符号添加到您的plist:
1)转到顶部栏,然后点击编辑。
2)现在选择特殊字符
3)现在将表情符号拖放到plist中。
有关详细信息,我正在添加快照。看一看。
答案 1 :(得分:1)
\uxxxx
符号仅由编译器解释(因为源代码通常是ASCII或MacRoman或其他任何东西,但通常不是UTF8)
Plist文件直接使用这些字符,并以UTF8编码。
因此,您应该将表情符号字符本身直接插入到plist中,而不是使用\uxxxx
表示法,因为Plist数据将按原样读取。
Lion and Mountain Lion Keyboard palettes contains emoji characters directly,因此在编辑PLIST时插入字符应该不难。