Prevent Emoji Characters from Showing

前端 未结 4 1761
小蘑菇
小蘑菇 2020-12-05 10:58

I use a few special uniode chars in my app, but since iOS 5 these have been replaced with emoji characters. How can I force the unicode characters to be displayed and not th

相关标签:
4条回答
  • 2020-12-05 11:12

    There's a few mentions of this issue on Apple's private devforums (which you have access to if you're a registered member of the iOS developer program).

    It sounds like the potential solution would be to explicitly set the font for whatever you're trying to display.

    0 讨论(0)
  • 2020-12-05 11:15

    Use "Hiragino Mincho ProN" for the font. It worked for me, but unfortunately I had to change the insets to make things look correct. I had to add an inset to the top to place things as they were before the iOS update.

    All the credit goes to Kevin Ballard who answered my post in the following discussion - Unicode characters being drawn differently in iOS5

    0 讨论(0)
  • 2020-12-05 11:19

    This is an old question but it plagued me a lot recently until I found the answer.

    Just add '\U0000FE0E' after the character that we want to prevent from becoming an emoji.

    For example:

    @"▶"  // should be written as:
    @"▶\U0000FE0E"
    

    Using the escaped unicode works as well:

    @"\u25B6"  // should be written as:
    @"\u25B6\U0000FE0E"
    

    We need to use Unicode variants to prevent certain characters from becoming emoji.

    Here is the article that solved my problem.

    0 讨论(0)
  • 2020-12-05 11:26

    Just to add to BFerer's helpful answer, I found this works similarly in Swift:

        "▶\u{0000FE0E}"
    
    0 讨论(0)
提交回复
热议问题