日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android XML文件中设置字体

發布時間:2023/12/15 Android 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android XML文件中设置字体 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
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″?>
<TableLayout … … android:stretchColumns = “1″>
<TableRow>
<TextView android:text=”sans:”
android:layout_marginRight=”4px”
android:textSize=”20sp” />
<TextView android:text=”Hello, World! 您好”
android:typeface=”sans” <!– android:typeface用于指定字體–>
android:textSize=”20sp” />
</TableRow>
… …類同,依次設置兩個TableRow,分別將sans 修改為serif,monospace … …
<TableRow>
<TextView android:text=”custom:” …. />
<TextView android:id=”@+id/c12_custom”
android:text=”Hello, World! 您好”
android:textSize=”20sp” />
</TableRow>
</TableLayout>

2、使用其他字體

1)將新字體的TTF文件copy到assets/fonts/目錄下面,例如我們將“*.ttf”copy了過去。

2)我們需要將widget設置為該字體,比較遺憾的是,不能直接在XML文件中進行,需要編寫源代碼。

TextView tv = (TextView)findViewById(R.id.c12_custom);
//從assert中獲取有資源,獲得app的assert,采用getAserts(),通過給出在assert/下面的相對路徑。在實際使用中,字體庫可能存在于SD卡上,可以采用createFromFile()來替代createFromAsset。
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 XML文件中设置字体的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。