前言
日常開發中,有時候會遇到特殊字符的顯示,比如數學符號、羅馬字符、特殊單位等等,常見的字符可以直接輸入,但是比如次冪、微分、積分、化學方程式等等無法直接輸入,
目前string.xml中支持直接輸入外,還可以使用ASCII碼來表示,但是ASCII碼常用的也就幾百個字符,遠遠無法滿足特殊字符的需求,在翻閱了Android官方關于String的說明后,發現String還支持Unicode碼,所以可以考慮使用Unicode碼來展示特殊字符,
Unicode編碼則是采用雙位元組16位來進行編號,可編65536字符,基本上包含了世界上所有的語言字符,它也就成為了全世界一種通用的編碼,而且用十六進制4位表示一個編碼,非常簡結直觀,為大多數開發者所接受,特別是十六進制編碼后,可以解決漢字在js再編碼程序中出現亂碼問題,提高解釋速度,我們建議在js腳本中使用十六進制unicode編碼,
應用
在這里舉幾個例子來展示:
- 次冪
string.xml
<string name="unit_ten_12_l" formatted="false">×10\u00B9\u00B2/L</string>
表示為 x10^12/L , 即10的12次方每升,如下所示

- 化學方程式
二訊訓碳 一般表示為CO2

在代碼中如下表示
string.xml
<string name="co2" formatted="false">CO\u2082</string>
預覽如下所示

- 段落小標題
段落為了增加層次,會添加小標題來區分,這種要么切圖,要么使用drawable實作
string.xml
<string name="title_01" formatted="false">\u2780</string>
預覽如下所示

- 羅馬數字
有時候會使用羅馬數字來作為段落標題,表示123,顯示為 Ⅰ、Ⅱ、Ⅲ
string.xml
<string name="title_01" formatted="false">\u2160 \u2161 \u2162 \u2163</string>
預覽如下所示

總結
這里只是舉了幾個例子來展示,Unicode碼有6萬多個字符,幾乎可以包含世界上的常用語言和文字,還有更多的使用場景等待我們去發現,
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/319843.html
標籤:其他
下一篇:運算子的細節(!~)
