您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> 安卓开发 >> 正文

Android 开发中怎么使用自定义字体

作者:佚名    责任编辑:admin    更新时间:2022-06-22

   1、Android系统默认支持三种字体,分别为:“sans”, “serif”, “monospace

  2、在Android中可以引入其他字体 。

  Android:layout_width="fill_parent"

  Android:layout_height="fill_parent" >

  Android:layout_marginRight="4px"

  Android:text="sans:"

  Android:textSize="20sp" >

  Android:id="@+id/sans"

  Android:text="Hello,World"

  Android:textSize="20sp"

  Android:typeface="sans" >

  Android:layout_marginRight="4px"

  Android:text="serif:"

  Android:textSize="20sp" >

  Android:id="@+id/serif"

  Android:text="Hello,World"

  Android:textSize="20sp"

  Android:typeface="serif" >

  Android:layout_marginRight="4px"

  Android:text="monospace:"

  Android:textSize="20sp" >

  Android:id="@+id/monospace"

  Android:text="Hello,World"

  Android:textSize="20sp"

  Android:typeface="monospace" >

  Android:layout_marginRight="4px"

  Android:text="custom:"

  Android:textSize="20sp" >

  Android:id="@+id/custom"

  Android:text="Hello,World"

  Android:textSize="20sp" >

  // 得到TextView控件对象

  TextView textView = (TextView) findViewById(R.id.custom);

  // 将字体文件保存在assets/fonts/目录下,www.linuxidc.com创建Typeface对象

  Typeface typeFace = Typeface.createFromAsset(getAssets(),"fonts/DroidSansThai.ttf");

  // 应用字体

  textView.setTypeface(typeFace);

  如果想对整个界面的所有控件都应用自定义字体,可以:

  package arui.blog.csdn.net;

  import android.app.Activity;

  import android.graphics.Typeface;

  import android.view.View;

  import android.view.ViewGroup;

  import android.widget.Button;

  import android.widget.EditText;

  import android.widget.TextView;

  public class FontManager {

  public static void changeFonts(ViewGroup root, Activity act) {

  Typeface tf = Typeface.createFromAsset(act.getAssets(),

  "fonts/xxx.ttf");

  for (int i = 0; i < root.getChildCount(); i++) {

  View v = root.getChildAt(i);

  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);

  }

  }

  }

  }

        :更多精彩教程请关注三联图文教程 频道,