0


我想在我的 android 设备上添加一些字体。我知道它必须植根才能安装字体。但是像 galaxies(我的是 Galaxy S II)这样的设备无需 root 即可支持字体。我的意思是在无根设备(如果支持)上添加字体的方法是什么?
它只是在字体文件夹中复制该字体还是什么?
先感谢您!

我不想在应用程序中使用字体,而只是更改文本视图或其他内容的类型。我想更改我的android系统的字体。例如该设备的设置菜单和其他地方的字体。

4

2 回答 2

1

你可以,你不能在xml布局中定义字体。您每次都需要动态使用它。例如查看本教程

万一链接死了,这里总结一下:

获取类似times.ttf的字体文件

将它放在您的资产文件夹中,在“字体”文件夹中,获取TextView(Ui Element)的引用,如下所示:

TextView tv = (TextView) findViewById(R.id.myCustomTVFont);

从资产文件夹中获取字体:

Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/times.ttf");

让您的 TextView 看起来很棒:

tv.setTypeface(tf);
于 2013-06-05T04:26:54.490 回答
0

如果您不想每次都设置字体。您可以创建自定义 TextView

public class CustomFontTypeTextView extends TextView {


    public CustomFontTypeTextView(Context context) {
        super(context);
        init(context);
    }


    public CustomFontTypeTextView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init(context);
    }

    private void init(Context context) {
        if (!isInEditMode()) {
            Typeface font = Typeface.createFromAsset(context.getAssets(), "Your TypeFce");
            setTypeface(font);
        }
    }
}
于 2013-06-05T05:42:17.587 回答