用NSString编写一个unicode字符

我在新项目中使用符号字体Symbolicons而不是图像。 但是,似乎无法使用NSString设置任何超过4个字符的代码。

例:

self.saveDealButton.titleLabel.font = [UIFont fontWithName:@"SS Symbolicons" size:31.0f]; [self.saveDealButton setTitle:@"\u1F4E5" forState:UIControlStateNormal]; 

但不会起作用:

 self.shareButton.titleLabel.font = [UIFont fontWithName:@"SS Symbolicons" size:31.0f]; [self.shareButton setTitle:@"\uF601" forState:UIControlStateNormal]; 

工作正常。 如何让NSString识别额外的位?

对于Supplementary Multilingual Plane中的那些字符,如示例所示,在转义字符串中使用大写的U ,然后使用八个hex代码。 所以它应该写成\U0001F4E5

在iOS中,unicode字符属于16位表示\ u,其中n在0000和ffff之间以hex表示法。

在你的例子中,\ uF601表示一个字符,你可以通过添加另一个序列\ uF601 \ uF602等来添加另一个字符。

对我来说,似乎你误解了转义语法?