Android空格對齊及相關知識點

解決問題

在Android佈局中進行使用到空格,以便實現文字的對齊。那麼在Android中如何表示一個空格呢?

 (空格:普通的英文半角空格但不換行)
 (窄空格:)
 (中文全角空格 (一箇中文寬度))
 (半個中文寬度,但兩個空格比一箇中文略大)
 (一箇中文寬度,但用起來會比中文字寬一點點)

所以完美空兩個中文的寫法爲

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="姓&#12288;&#12288;名" />

但如果我們在代碼裏賦值就不能這樣寫了

tv_name.setText("姓&#12288;&#12288;名");

顯示的並沒有變成空格,沒有轉義。
我們應該這樣寫

tv_name.setText("姓\u3000\u3000名");

知識點1:半角與全角

在計算機屏幕上,一個漢字要佔兩個英文字符的位置,把一個英文字符所佔的位置稱爲"半角",相對地把一個漢字所佔的位置稱爲"全角"。在漢字輸入時,系統提供"半角"和"全角"兩種不同的輸入狀態,但是對於英文字母、符號和數字這些通用字符就不同於漢字,在半角狀態它們被作爲英文字符處理;而在全角狀態,它們又可作爲中文字符處理。如果處理不好就影響Android的xml佈局上文字的對齊。


知識點2:unicode 的三種表現形式:&#、&#x、\u

Unicode一般指統一碼。統一碼,也叫萬國碼、單一碼(Unicode)是計算機科學領域裏的一項業界標準,包括字符集、編碼方案等。一般我們可以在網站上進行轉化中文轉unicode

那這三種形式很好理解:&#x 、\u後面跟的是是16進制的,&#、後面是10進制的, &#開頭的運用在xml佈局裏,而\u開頭的用在java代碼或者string.xml裏。

只要理解了這三種形式的關係,我們再碰到不會的字符就去網上搜索對應的unicode就可以自由運用了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章