我有一个 UILabel
显示来自网络服务的字符串。它似乎正确显示了一些 unicode 字符,但不是全部。该字符串来自 JSON 对象中的 Web 服务,如下所示:
"\u2b51\u2605 特殊字符"
这在 UILabel
中显示如下:
很明显,它可以很好地显示 \u2605
字符,但不能显示 \u2b51
字符。字体是Helvetica Neue
——系统字体。
我是不是做错了什么,或者这是 iOS 和/或字体中的错误?
最佳答案
这似乎纯粹是字体问题。 U+2605 BLACK STAR“★”这个字符在字体中比较常见,估计是从系统字体或者后备字体中提取的。 U+2B51 BLACK SMALL STAR “⭑”字比较少见;它是在 Unicode 5.1 中添加的,即最近(在字符代码世界中)。根据Fileformat.info data , 它出现在 Code2000、FreeSerif、GNU Unifont、Quivira、STIX、STIXMath 和 Symbola 中。不多;大多数计算机都没有(尽管许多 Linux 系统可能有 FreeSerif)。好吧,看来您可以将 Asana Math 和 Universalia 添加到列表中;仍然相当有限。
关于ios - UILabel 中看似不受支持的 unicode 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22150808/