Android如何使用自定义字体

原创 2013年12月03日 18:13:24

做应用时,使用text显现出的文字都属于系统默认的字体,有时候达不到自己的需求

 

Android系统自带了三种字体,分别是sans、serif和monospace,使用方式是在xml中配置typface即可

<TextView
        android:id="@+id/header_textview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:textSize="24sp"
        android:textStyle="bold"
        android:typeface="sans"
        android:textColor="@color/white" />


 

如果想使用其他的字体,可以按照如下方法:

首先下载想要显示的字体的ttf文件,并且放到assets文件夹下的fonts文件夹中(fonts自己新建一个即可)

然后在代码中设置控件的属性即可:

// 使用自定义字体
		Typeface typeface = Typeface.createFromAsset(getContext().getAssets(), "fonts/YEGENYOUTEKAI9-28_0.TTF");
		headerTextView.setTypeface(typeface);


 

将字体文件存放在assets文件夹中仅是一种方法,保存为文件或者其他形式也能实现

 

如果想要将全部字体都更改,目前我所知道的办法是遍历所有控件,如果有更好的办法,欢迎大家提供补充

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

		       Typeface typeface = Typeface.createFromAsset(activity.getAssets(), "fonts/xxx.ttf");  

		       for (int i = 0; i < root.getChildCount(); i++) {  
		    	   
		           View v = root.getChildAt(i);  
		           
		           if (v instanceof TextView) {  
		              ((TextView) v).setTypeface(typeface);  
		           } else if (v instanceof Button) {  
		              ((Button) v).setTypeface(typeface);  
		           } else if (v instanceof EditText) {  
		              ((EditText) v).setTypeface(typeface);  
		           } else if (v instanceof ViewGroup) { 
		        	   // 递归调用
		              changeFonts((ViewGroup) v, activity);  
		           }  

		       }  

		    }  


 

Android中快速实现自定义字体!

文章目的:快速入门Android中自定义各种字体! 前言:我们都知道,Android中默认的字体是黑体,而大多数app也都是使用的这种字体,但我们发现,大多数app中,个别地方字体非常好看,例如ap...
  • JavaAndroid730
  • JavaAndroid730
  • 2016年11月10日 22:47
  • 2005

在Android中使用自定义字体

我想自定义字体为我而我创建Android应用程序。 我可以分别更改从代码的每个对象的字体,但我有数百人。 所以, 有没有一种方法来从XML做到这一点? [设置自定义字体] 有没有一种方法,从代码做在一...
  • u014608071
  • u014608071
  • 2016年04月14日 20:21
  • 436

在Android O中使用自定义字体

将自定义字体添加到您的项目相比之前的版本,使用Android中的自定义字体将会变得更加容易,因为自定义字体设置为在Android O中成为完全支持的资源类型。这意味着向应用程序添加自定义字体将与添加任...
  • yibanguaiqi
  • yibanguaiqi
  • 2017年05月31日 17:57
  • 562

在Android O中使用自定义字体

将自定义字体添加到您的项目相比之前的版本,使用Android中的自定义字体将会变得更加容易,因为自定义字体设置为在Android O中成为完全支持的资源类型。这意味着向应用程序添加自定义字体将与添加任...
  • fjnu_se
  • fjnu_se
  • 2017年06月04日 21:16
  • 454

自定义TextView导入外部特殊字体

前段时间由于项目需求,app需要使用特殊字体,所以在网上搜刮了一大波博客把需求完成了,但是由于并没有完美的解决问题(问题见上篇博客),几经曲折跟好基友请教了一番,毛瑟顿开,才有了一下这篇博文。 特殊...
  • as_jon
  • as_jon
  • 2016年06月02日 11:05
  • 901

盘点Android使用自定义字体遇到的坑

最近项目中涉及到一些其他平面的汉字或者别的文字的展示,具体的细节就不提了,那么怎么使用这些TTF字体文件呢,就需要借助于TypeFace这个类来实现。使用字体文件我们可以有两种方式使用字体文件: ①...
  • aiynmimi
  • aiynmimi
  • 2016年09月06日 16:03
  • 4269

Android神技之 使用SVG以及自定义IconFont字体库

Android神技之 使用SVG以及自定义IconFont字体库简介Google在Android 5.X中增加了对SVG矢量图形的支持。SVG是什么 SVG 指可伸缩矢量图形 (Scalable Ve...
  • Alex_wsc
  • Alex_wsc
  • 2017年04月30日 00:10
  • 1588

安卓设置自定义字体的解决方案

解决方案 1)Android默认方法 #1 你可以通过ID查找到View,然后挨个为它们设置字体。在单个View的情况下,它看起来也没有那么可怕。 Typeface customFont = Ty...
  • f112122
  • f112122
  • 2015年08月13日 14:05
  • 3686

Android自定义字体类库Calligraphy--快速实现自定义应用字体

现在手机上字体美化软件越来越多,各种怪状各种风格的字体都有, 作为Android开发人员,应用中有时会需要强制使用某种字体(这样做会增大应用的内存消耗,而且字体包越大消耗内存越大),所以我们就需...
  • u011282069
  • u011282069
  • 2015年02月14日 16:04
  • 2879

Android引入外部自定义特殊字体的方法

在开发的过程中,android系统自带的字体中规中矩,样式也不外乎就是加加粗,打打斜,很多时候并不能满足我们的需求,此时我们可以引入其他自己下载好的字体,植入到我们自己的程序中,按需使用,大致的步骤如...
  • eyu8874521
  • eyu8874521
  • 2013年04月02日 09:12
  • 4848
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android如何使用自定义字体
举报原因:
原因补充:

(最多只允许输入30个字)