9

我在新项目中使用符号字体 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 识别额外的位?

4

2 回答 2

18

对于补充多语言平面中的那些字符,如您的示例中所示,U在转义字符串中使用大写字母,后跟八个十六进制代码。所以应该写成\U0001F4E5

于 2012-10-27T16:02:35.610 回答
-1

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

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

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

于 2012-10-27T15:55:57.740 回答