我想在我的应用中使用Roboto字体作为每个TextViews,EditTexts,Buttons等的默认字体。
我把ttf文件放在assets文件夹里面的fonts文件夹中。现在我想编辑应用程序样式,以便使用该字体。 所以,这就是我所做的。
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:typeface">ROBOTO-REGULAR.TTF</item>
</style>
但编译器会返回此错误。
String types not allowed (at 'android:typeface' with value 'ROBOTO-
REGULAR.TTF').
是否可以通过XML定义应用程序的默认字体?在这种情况下,出了什么问题? 提前谢谢。
答案 0 :(得分:4)
你不能按照你想要的方式去做。 android:typeface
属性是枚举,具有固定数量的值。它不需要文件名。
所做的是实现自定义TextView
(以及从其各自类继承的自定义Button
和EditText
),它们会读取自定义属性并加载属性指向的字体文件。
请记住,Roboto是从Honeycomb开始使用的(或者是ICS?)。在旧设备上看起来确实有点不合适,其中Droid Sans是系统范围的默认设置。