解決問題
在Android布局中進(jìn)行使用到空格,以便實(shí)現(xiàn)文字的對(duì)齊。那么在Android中如何表示一個(gè)空格呢?
 (空格:普通的英文半角空格但不換行)
 (窄空格:)
 (中文全角空格 (一個(gè)中文寬度))
 (半個(gè)中文寬度,但兩個(gè)空格比一個(gè)中文略大)
 (一個(gè)中文寬度,但用起來(lái)會(huì)比中文字寬一點(diǎn)點(diǎn))
所以完美空兩個(gè)中文的寫法為
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="姓  名" />
但如果我們?cè)诖a里賦值就不能這樣寫了
tv_name.setText("姓  名");
顯示的并沒有變成空格,沒有轉(zhuǎn)義。
我們應(yīng)該這樣寫
tv_name.setText("姓\(chéng)u3000\u3000名");
知識(shí)點(diǎn)1:半角與全角
在計(jì)算機(jī)屏幕上,一個(gè)漢字要占兩個(gè)英文字符的位置,把一個(gè)英文字符所占的位置稱為"半角",相對(duì)地把一個(gè)漢字所占的位置稱為"全角"。在漢字輸入時(shí),系統(tǒng)提供"半角"和"全角"兩種不同的輸入狀態(tài),但是對(duì)于英文字母、符號(hào)和數(shù)字這些通用字符就不同于漢字,在半角狀態(tài)它們被作為英文字符處理;而在全角狀態(tài),它們又可作為中文字符處理。如果處理不好就影響Android的xml布局上文字的對(duì)齊。


知識(shí)點(diǎn)2:unicode 的三種表現(xiàn)形式:&#、&#x、\u
Unicode一般指統(tǒng)一碼。統(tǒng)一碼,也叫萬(wàn)國(guó)碼、單一碼(Unicode)是計(jì)算機(jī)科學(xué)領(lǐng)域里的一項(xiàng)業(yè)界標(biāo)準(zhǔn),包括字符集、編碼方案等。一般我們可以在網(wǎng)站上進(jìn)行轉(zhuǎn)化中文轉(zhuǎn)unicode

那這三種形式很好理解:&#x 、\u后面跟的是是16進(jìn)制的,&#、后面是10進(jìn)制的, &#開頭的運(yùn)用在xml布局里,而\u開頭的用在java代碼或者string.xml里。
只要理解了這三種形式的關(guān)系,我們?cè)倥龅讲粫?huì)的字符就去網(wǎng)上搜索對(duì)應(yīng)的unicode就可以自由運(yùn)用了。