Android字体系列无法在api中运行< = ~21?

时间:2018-04-23 17:35:59

标签: android android-layout fonts font-awesome android-resources

我正在使用FontAwesome 5 ttf文件,所以我创建了一个这样的字体系列:

<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <font 
        app:font="@font/font_awesome_5_pro_regular_400"
        app:fontStyle="normal"
        app:fontWeight="400"
        />
    <font
        app:font="@font/font_awesome_5_pro_solid_900"
        app:fontStyle="normal"
        app:fontWeight="900"
        />
    <font
        app:font="@font/font_awesome_5_pro_light_300"
        app:fontStyle="italic"
        app:fontWeight="300"
        />
</font-family>

这样我就可以像这样定义字符串资源:

<string name="fa_gift_light"><i>\uf06b</i></string>
<string name="fa_gift_bold"><b>\uf06b</b></string>

获得重,轻,正常版本的图标。这在API的上面工作得很好~~ 21(我实际上并没有查看它破坏的版本,但我知道它在API 19和21中没有工作,我的项目最小化是19),但在下面的API中,&#34; italic&#34; style只是倾斜了图标的正常版本,如下所示:

slanted icon (should be light)

除了完全放弃字体系列方法之外,还有什么方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

你可以检查书法库,一个很好的字体定制库 你可以从Gihub查看 网址: - https://github.com/chrisjenx/Calligraphy