有一种朋友不在生活里,却在生命力;有一种陪伴不在身边,却在心间。即在大家的生活中又在身边。这么贴心的服务你感受到了吗?话不多说下面就和大家分享解析Android中使用自定义字体的实现方法吧。
1、Android系统默认支持三种字体,分别为:“sans”, “serif”, “monospace
2、在Android中可以引入其他字体 。
代码如下:
?xml version="1.0" encoding="utf-8"?
TableLayout ""
""
""
TableRow
TextView
""
":"
""
/TextView
!-- 使用默认的sans字体 --
TextView
"+"
","
""
""
/TextView
/TableRow
TableRow
TextView
""
":"
""
/TextView
!-- 使用默认的serifs字体 --
TextView
"+"
","
""
""
/TextView
/TableRow
TableRow
TextView
""
":"
""
/TextView
!-- 使用默认的monospace字体 --
TextView
"+"
","
""
""
/TextView
/TableRow
!-- 这里没有设定字体,我们将在Java代码中设定 --
TableRow
TextView
""
":"
""
/TextView
TextView
"+"
","
""
/TextView
/TableRow
/TableLayout
代码如下:
// 得到TextView控件对象
TextView textView = (TextView) findViewById();
// 将字体文件保存在assets/fonts/目录下,创建对象
Typeface typeFace = (getAssets(),"fonts/DroidSansThai.ttf");
// 应用字体
();
如果想对整个界面的所有控件都应用自定义字体,可以:
代码如下:
package ;
import ;
import ;
import ;
import Group;
import ;
import ;
import ;
public class FontManager {
public static void changeFonts(ViewGroup root, Activity act) {
Typeface tf = ((),
"fonts/xxx.ttf");
for (int i = 0; i (); i++) {
View v = ();
if (v instanceof TextView) {
((TextView) v).setTypeface(tf);
} else if (v instanceof Button) {
((Button) v).setTypeface(tf);
} else if (v instanceof EditText) {
((EditText) v).setTypeface(tf);
} else if (v instanceof ViewGroup) {
changeFonts((ViewGroup) v, act);
}
}
}
}