我想在Android应用中使用自定义字体,但使用自定义字体似乎很痛苦?! 我可以通过将其添加到每个TextView - >以编程方式设置自定义字体。很多样板代码。我可以创建一个新类CustomTextView扩展TextView并在构造函数中添加setTypeface - >没有xml上下文感知帮助属性了。
还有另一种设置自定义字体的方法吗?按XML,按风格,按主题?
提前致谢!
P.S。是否有可能通过XML设置下划线?
答案 0 :(得分:10)
使用此代码更改字体textview ..
TextView newfont;
newfont=(TextView) findViewById(R.id.textView1);
Typeface font=Typeface.createFromAsset(getAssets(), "fonts/DejaVuSerif-Italic.ttf");
newfont.setTypeface(font);
newfont.setText("This is the new font Text");
从网上下载DejaVuSerif-Italic.ttf文件,并在资源文件夹中输入 fonts 文件夹。
答案 1 :(得分:6)
您可以在资源/字体下包含自定义字体,然后使用
中的代码https://github.com/browep/AndroidCustomFontWidgets/
您可以在XML中指定字体,例如
<com.github.browep.customfonts.view.FontableTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="This is in a custom font"
app:font="MyFont-Bold.otf" />
代码支持FontableTextView和FontableButton,但如果需要,可以很容易地扩展以支持其他窗口小部件类型。