源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

解析Android中使用自定义字体的实现方法

  • 时间:2022-05-18 23:12 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:解析Android中使用自定义字体的实现方法
[b]1、Android系统默认支持三种字体,分别为:“sans”, “serif”, “monospace [/b] [b]2、在Android中可以引入其他字体 。 [/b]
[u]复制代码[/u] 代码如下:
<?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:Android="http://schemas.android.com/apk/res/android"     Android:layout_width="fill_parent"     Android:layout_height="fill_parent" >     <TableRow>         <TextView             Android:layout_marginRight="4px"             Android:text="sans:"             Android:textSize="20sp" >         </TextView>         <!-- 使用默认的sans字体 -->         <TextView             Android:id="@+id/sans"             Android:text="Hello,World"             Android:textSize="20sp"             Android:typeface="sans" >         </TextView>     </TableRow>     <TableRow>         <TextView             Android:layout_marginRight="4px"             Android:text="serif:"             Android:textSize="20sp" >         </TextView>         <!-- 使用默认的serifs字体 -->         <TextView             Android:id="@+id/serif"             Android:text="Hello,World"             Android:textSize="20sp"             Android:typeface="serif" >         </TextView>     </TableRow>     <TableRow>         <TextView             Android:layout_marginRight="4px"             Android:text="monospace:"             Android:textSize="20sp" >         </TextView>         <!-- 使用默认的monospace字体 -->         <TextView             Android:id="@+id/monospace"             Android:text="Hello,World"             Android:textSize="20sp"             Android:typeface="monospace" >         </TextView>     </TableRow>     <!-- 这里没有设定字体,我们将在Java代码中设定 -->     <TableRow>         <TextView             Android:layout_marginRight="4px"             Android:text="custom:"             Android:textSize="20sp" >         </TextView>         <TextView             Android:id="@+id/custom"             Android:text="Hello,World"             Android:textSize="20sp" >         </TextView>     </TableRow> </TableLayout>
[u]复制代码[/u] 代码如下:
// 得到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);
[b]如果想对整个界面的所有控件都应用自定义字体,可以: [/b]
[u]复制代码[/u] 代码如下:
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);              }          }       }   } 
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部