找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3092|回復: 1
打印 上一主題 下一主題
收起左側(cè)

Android提供三種字

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:140343 發(fā)表于 2016-9-25 11:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
Android提供三種字體:“Sans”,“serif”和“monospace”。1、在Android XML文件中設置字體

可以采用android:typeface,例如android:typeface=”monospace”。在這里例子中我們在Activity中對android:text=”Hello, World! 您好”分別進行了四種顯示方式,依次為“Sans”,“serif”,“monospace”和系統(tǒng)缺省方式(經(jīng)試驗缺省采用采用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,但是系統(tǒng)無法識別出該字體,沒有顯示,然后嘗試使用英文字體timesi.ttf,正常。因此Android并非和所有的TTF字體都能兼容,尤其在中文特殊字體的支持會存在問題,對于不兼容的字體,Android不出報錯,只是無法正常顯示。一般而言我們都會使用系統(tǒng)缺省提供的字體。

對于華文行楷字體,我們一開始使用的文件是中文名字,出現(xiàn)報錯,后來我們將之改為全小寫的英文名稱就不會出錯,所以在文件命名上需要注意。

順便給大家一個字體庫,去下載吧,

3、一些注意

使用其他字庫,都會消耗程序的空間,這是要非常注意的。而且這些字庫有時并不能完全提供你所需要的文字。

舉個例子,省略方式。當文字太多的時候,可以通過省略號省略后面的內(nèi)容,省略號是使用“…”作為一個字體,可通過android:ellipsize屬性進行設置。如果我們需要使用省略功能,需要確保字體具有省略號。此外,為了保證長度的一直,Android會進行填充處理,除了將一個字符更換為省略符合外,后面的字符將更換為一個特殊的Unicode字符,‘ZERO WIDTH NO-BREAK SPACE’ (U+FEFF)。這個字符并占用任何可視的位置,但是保障了string具有同樣的長度。不是所有的字體都支持這個特殊的字符,可能會引發(fā)一些亂碼現(xiàn)象。

Android是支持國際語言的,但是我們?nèi)孕枰獙ustom的字體小心處理。


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:171288 發(fā)表于 2017-3-16 17:37 | 只看該作者
這個方法挺高的
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表