I am trying to do a application-wide font change and creating a style file to do so. In this file (below) I just want to change typeface value of TextAppearance style of Android.
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="NightRiderFont" parent="@android:style/TextAppearance">
<item name="android:typeface"> /***help need here***/ </item>
</style>
</resources>
However font is in “assets/fonts/”. How can I access this font, so I can use that style as a theme to get rid of changing all TextViews by hand programatically.
As summary: How can I access ‘a file from assets folder’ in XML?
In my research, there is no way to add external font to the xml file. Only the 3 default font is available in xml
But you can use in java using this code.
Update:
Now I find a way to do this by creating a custom class extending the TextView and use that in the xml file.
and in xml
dont forget to add the schema in root of your xml
And create an
attrs.xmlfile insidevaluesdirectory, which is holding our custom attribues:Update:
Application class will look like this