2011-11-21 103 views
17

我在我的應用程序中使用了一些特殊的uniode字符,但自iOS 5以來,這些字符已被替換爲表情符號字符。如何強制顯示unicode字符而不顯示emoji字符?謝謝防止顯示錶情符號字符

回答

0

在Apple的私人開發者論壇(如果您是iOS開發人員計劃的註冊會員,您可以訪問該網站)有幾處提及此問題。

這聽起來像是潛在的解決方案是明確設置字體爲任何你試圖顯示。

+0

不幸的是,這並不工作 – RunLoop

-1

使用「Hiragino Mincho ProN」作爲字體。它爲我工作,但不幸的是我不得不改變插入,使事情看起來正確。我必須在頂部添加一個嵌入,以便像iOS更新之前那樣放置內容。

全部歸功於凱文·巴拉德誰回答我的崗位在下面的討論 - Unicode characters being drawn differently in iOS5

15

這是一個老問題,但它最近困擾我很多東西,直到我找到了答案。

只要在我們想要防止成爲表情符號的字符後面加上'\ U0000FE0E'即可。

例如:

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

使用轉義的unicode工程,以及:

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

我們需要使用Unicode變種,以防止某些字符變成表情符號。

Here is the article that solved my problem.

+0

謝謝!今天也用同樣的unicode符號進入這個確切的問題。此解決方案完美運作。 – ChrisJP

+0

很高興能幫到@ChrisJP!我很震驚,因爲我找不到一個好的答案,甚至找不到3歲以上的問題! – BFeher

6

只需添加到BFerer的有用的答案,我發現這種工作方式類似於在斯威夫特:

"▶\u{0000FE0E}" 
+0

這不適用於iOS9/Swift 2.任何建議? – 1b0t

+0

回答我自己的問題。顯然,聖弗朗西斯科根本就沒有這個字符。將字體重新設置爲Helvetica Neue可以修復它。 – 1b0t