Android中使用自定义的字体


有时候应用中希望使用自定义的字体文件,下面的代码可以作为参考。

1. 将字体文件放入assert文件夹下,这里为fonts/xxx.ttf。

2. 在需要改变字体的Acitivity中使用FontManager.changeFonts()方法来改变字体。

 
  1. package arui.www.bkjia.com;  
  2.    
  3. import Android.app.Activity;  
  4. import android.graphics.Typeface;  
  5. import android.view.View;  
  6. import android.view.ViewGroup;  
  7. import android.widget.Button;  
  8. import android.widget.EditText;  
  9. import android.widget.TextView;  
  10.    
  11. public class FontManager {  
  12.    
  13.     public static void changeFonts(ViewGroup root, Activity act) {  
  14.    
  15.        Typeface tf = Typeface.createFromAsset(act.getAssets(),  
  16.               "fonts/xxx.ttf");  
  17.    
  18.        for (int i = 0; i < root.getChildCount(); i++) {  
  19.            View v = root.getChildAt(i);  
  20.            if (v instanceof TextView) {  
  21.               ((TextView) v).setTypeface(tf);  
  22.            } else if (v instanceof Button) {  
  23.               ((Button) v).setTypeface(tf);  
  24.            } else if (v instanceof EditText) {  
  25.               ((EditText) v).setTypeface(tf);  
  26.            } else if (v instanceof ViewGroup) {  
  27.               changeFonts((ViewGroup) v, act);  
  28.            }  
  29.        }  
  30.    
  31.     }  
  32. }    

相关内容