在整个安卓应用程序的资产中设置您自己的字体



我只想更改整个应用程序的字体。 我只想在我的资产中有 3 种字体,当用户单击我的设置时,它会更改整个字体。我找到了一些例子,但我无法理解方式.我只是刚接触安卓。

您应该使用书法库,这是在 android 中更改字体的最简单方法。

该库看起来相当不错,但如果您不太知道如何使用它,或者您认为使用它太难,您可以按照以下步骤操作:

在您的项目中,在与 res、src 等相同的级别中创建一个名为"assets"的文件夹......

在此文件夹中创建另一个名为"fonts"的文件夹,并在其中复制您需要使用的字体...就我而言...机器人常规.ttf

我认为最常用的文件类型是*.ttf

好的,我不确定您是否知道创建一个从类应用程序扩展的类(如果没有,请在互联网上检查它,因为它非常重要)。

在项目的应用程序中包括:

private static Typeface primaryFont;
/**
 * @return primary font Typeface
 * 
 * By keeping only one instance of the typeface, the app performance is increased massively!
 */
public static Typeface getPrimaryFontTypeface() {
    if(primaryFont == null){
        primaryFont = Typeface.createFromAsset(CameraManager.getContext().getAssets(), Constants.PRIMARY_FONT_PATH);
    }
    return primaryFont;
}

在要使用此自定义字体的任何地方之后,您都需要通过示例将字体设置为一个 TextView:

TextView email = (TextView) root.findViewById(R.id.email_tv);
email.setTypeface(getApp().getPrimaryFontTypeface());

如果不想每次使用此自定义字体时都编写这些代码行,则需要创建自定义文本视图。要创建一个自定义视图,您可以在其中修改该视图的正常行为,您需要在堆栈溢出上创建另一个问题。

希望对您有所帮助。如果是,请给我的答案打分。谢谢!;)

最新更新