在iOS中的UITextView不显示笑脸(表情符号)?

我已经存储所有的uni代码(emoji字符)在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为文本\ ue415而不是表情符号。

我做错了什么? 请帮帮我!

\uxxxx符号只能由编译器解释(因为源代码通常是ASCII或MacRoman或任何其他types的,但通常不是UTF8)

Plist文件直接使用这些字符,并以UTF8编码。 所以你应该直接将表情符号插入到plist中,而不是使用\uxxxx表示法,因为\uxxxx数据将按原样读取。

狮子和山狮子键盘调色板直接包含表情符号 ,所以在编辑PLIST时不应该很难插入字符。

Wel通过@AliSoftware表示,Plist数据将被读取,因此您可以按照以下步骤将emojis添加到plist:

1)转到您的顶部栏,然后单击编辑。

2)现在select特殊字符

3)现在拖放表情符号到plist。

欲了解更多细节,我正在添加快照。 看看它。 步骤1步骤2步骤3