android提供三種字型:「sans」,「serif」和「monospace」。
1、在android xml檔案中設定字型
可以採用android:typeface,例如android:typeface=」monospace」。在這裡例子中我們在activity中對android:text=」hello, world! 您好」分別進行了四種顯示方式,依次為「sans」,「serif」,「monospace」和系統預設方式(經試驗預設採用採用sans)。英文本型有差異,貌似中文字型沒有差異。xml檔案如下:
<?xml version=」1.0″ encoding=」utf-8″?>2、使用其他字型android:text=」sans:」
android:layout_marginright=」4px」
android:textsize=」20sp」/>
android:textsize=」20sp」/>
… …類同,依次設定兩個tablerow,分別將sans 修改為serif,monospace … …
android:text=」hello, world! 您好」
android:textsize=」20sp」 />
1)將新字型的ttf檔案copy到assets/fonts/目錄下面,例如我們將「*.ttf」copy了過去。
2)我們需要將widget設定為該字型,比較遺憾的是,不能直接在xml檔案中進行,需要編寫源**。
typeface face = typeface.createfromasset(getassets(),「fonts/timesi.ttf」);
tv.settypeface(face);
我在模擬器中先後匯入華文行楷的字型,大約4m,但是系統無法識別出該字型,沒有顯示,然後嘗試使用英文本型timesi.ttf,正常。因此android並非和所有的ttf字型都能相容,尤其在中文特殊字型的支援會存在問題,對於不相容的字型,android不出報錯,只是無法正常顯示。一般而言我們都會使用系統預設提供的字型。
對於華文行楷字型,我們一開始使用的檔案是中文名字,出現報錯,後來我們將之改為全小寫的英文名稱就不會出錯,所以在檔案命名上需要注意。
3、一些注意
使用其他字型檔,都會消耗程式的空間,這是要非常注意的。而且這些字型檔有時並不能完全提供你所需要的文字。
舉個例子,省略方式。當文字太多的時候,可以通過省略號省略後面的內容,省略號是使用「…」作為乙個字型,可通過android:ellipsize屬性進行設定。如果我們需要使用省略功能,需要確保字型具有省略號。此外,為了保證長度的一直,android會進行填充處理,除了將乙個字元更換為省略符合外,後面的字元將更換為乙個特殊的unicode字元,『zero width no-break space』 (u+feff)。這個字元並占用任何可視的位置,但是保障了string具有同樣的長度。不是所有的字型都支援這個特殊的字元,可能會引發一些亂碼現象。
android是支援國際語言的,但是我們仍需要對custom的字型小心處理。
Android學習筆記(二八) 字型
1 在android xml檔案中設定字型 可以採用android typeface,例如android typeface monospace 在這裡例子中我們在activity中對android text hello,world 您好 分別進行了四種顯示方式,依次為 sans serif mono...
Android學習筆記(二八) 字型
android提供三種字型 sans serif 和 monospace 1 在android xml檔案中設定字型 可以採用android typeface,例如android typeface monospace 在這裡例子中我們在activity 中對android text hello,wo...
Android學習筆記 二八 字型
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!1 在android xml檔案中設定字型 可以採用android typeface,例如android typeface monospace 在這裡例子中我們在activity中對android text hello,world 您好 分別進行了...