【问题标题】:how to prevent iOS from converting ascii into emoji?如何防止 iOS 将 ascii 转换为 emoji?
【发布时间】:2016-10-20 18:59:10
【问题描述】:

我将这个简单的String 应用于UILabel

labelInfo.text = "(11) ♥ 6"

这就是我想要的样子

(11) ♥ 6

原来是这样的

我确实搜索了 很多,但没有找到方法..

我找到了删除表情符号的方法,但这使它看起来像这样

(11) 6

如果您有提示,将不胜感激。

【问题讨论】:

    标签: ios swift nsstring emoji


    【解决方案1】:

    转到 Xcode 中的 Edit->Emoji 和 Symbols。键入您要使用的符号名称(在您的案例中)。复制它。然后按照您想要的方式粘贴它。例如:_mylabel.text=@"♥︎";

    【讨论】:

    • 这是一个很好的答案,但我们仍然没有得到所有符号,因为有些符号会保留给表情符号?还是我弄错了?
    【解决方案2】:

    Apple 在 iOS 5 中对此进行了更改。在大多数字体中,所有可能显示为表情符号的字符都替换为 Apple Emoji 字体中的彩色字符。

    有几种解决方案:

    1. 非彩色字形使用 Unicode 变体选择器:U+FE0E

    labelInfo.text = "(11) \u{2665}\u{fe0e} 6"

    1. 设置 Apple 不强制使用表情符号的字体。人们通常推荐Hiragino Mincho ProN

    2. 使用图形上下文绘制方法来显示文本。

    另见:

    【讨论】:

      【解决方案3】:

      这对我有用:

      请确保使用实际的 ASCII 符号而不是代码,并在其后附加 \u{0000FE0E},如下所示:

      label.text = "♥\u{0000FE0E} Love!"

      它会像这样正确显示在标签中:

      ♥ Love!

      注意:请确保该符号存在于您的字体中。如果它不起作用,请尝试更改字体。谢谢。

      【讨论】:

        猜你喜欢
        • 2021-08-16
        • 2013-05-01
        • 2017-02-18
        • 1970-01-01
        • 2016-10-12
        • 1970-01-01
        • 2016-09-02
        • 2023-02-02
        • 2023-02-09
        相关资源
        最近更新 更多