我有一个如何将字体更改为文本的示例,但我需要的是全局应用它,所以我不必将它放在每个TextView
:
public class ActividadEjemplo extends AppCompatActivity {
TextView text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ejemplo);
text = (TextView)findViewById(R.id.txt1);
String font_path = "font/Quicksand-Regular.ttf";
Typeface fuente = Typeface.createFromAsset(getAssets(),font_path);
text.setTypeface(fuente);
}
}
要快速使用Calligraphy,请创建您的项目并将引用添加到库中
然后你创建一个扩展到Application类的类
我的应用程序.java
然后在您的AndroidManifest.xml文件中,在android:name属性的应用程序标签内,放置您之前创建的类的名称,如下所示:
然后在资产目录中的项目中放置字体,在我的情况下,我有assets/fonts/Roboto-Regular.ttf。然后在您的Main类中添加以下内容:
这样,您可以使活动内的所有组件加载默认字体,在本例中为Roboto-Regular.ttf。
要在全球范围内进行,我建议使用Calligraphy。您可以为整个应用程序定义全局字体,甚至可以在 XML 中分配在您的资产中找到的字体。
更新
首先,您需要将其作为依赖项添加到您的 gradle 文件中:
您必须有一个扩展类,
Application
您必须在其方法中添加以下代码onCreate()
:最后,在
Activity
您想要使用默认字体的每个字体中,您必须添加以下代码:所有这些信息也可以在这个库的 Github 存储库中找到。