天天看点

xml android 字体,如何在android xml中使用自定义字体?

通过googling发现的最好的方式是 – 说如果你想在TextView中使用,那么我们必须扩展Textview,并设置字体,以后我们可以使用我们的定制Textview在我们的XML。我将在下面展示扩展的TextView

package com.vins.test;

import android.content.Context;

import android.graphics.Typeface;

import android.util.AttributeSet;

import android.widget.TextView;

public class MyTextView extends TextView {

public MyTextView(Context context, AttributeSet attrs, int defStyle) {

super(context, attrs, defStyle);

init();

}

public MyTextView(Context context, AttributeSet attrs) {

super(context, attrs);

init();

}

public MyTextView(Context context) {

super(context);

init();

}

private void init() {

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

"your_font.ttf");

setTypeface(tf);

}

}

我们调用init()在每个构造函数中设置字体。

后来我们在main.xml中使用这个,如下所示。

android:id="@+id/txt"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:gravity="center"

android:layout_weight="1"

android:text="This is a text view with the font u had set in MyTextView class "

android:textSize="30dip"

android:textColor="#ff0000"

>

更新:

注意pandre提到的4.0之前的Android的内存泄漏。