Custom ttf fonts are not showing properly in TextView on Android 4.4 KitKat

笑着哭i 提交于 2019-11-29 10:18:18

So, after being frustrated by this bug, I searched around and found a solution to the problem. In my current project we use calibri.ttf font. that was working fine up to 4.4. Once i got the update to my nexus 4, All the TextViews with Calibri font were showing "ff" instead of the entire text.

THE FIX - get an .otf (open type font) version of your font, and put in the project, works like a charm. Too bad google didn't inform the developers on this and there's very little documentation on the matter.

Arpan24x7

Put your custom font in android assets under folder name "font" or whatever you want

Try this

myTypeface = Typeface.createFromAsset(this.getAssets(),
            "fonts/<<your font>>.ttf");

in onCreate() then

[use youcontroll].setTypeface(myTypeface);

Best of Luck...

I resolved the problem by converting my file.ttf to file.otf

remplace :

Typeface typeface = Typeface.createFromAsset(activity.getAssets(), "fonts/ostrich_regular.ttf");
yourTextView.setTypeface(typeface);

by :

Typeface typeface = Typeface.createFromAsset(activity.getAssets(), "fonts/ostrich_regular.otf");
yourTextView.setTypeface(typeface);

FYI : the .otf format work for all android version (not only on kitkat)

After many hours searching for roboto.otf (2014 year) I understood that it was a mistake. Simply download a normal ttf font from https://www.fontsquirrel.com/fonts/roboto-2014 and copy to assets folder, then use setTypeface. Also you may convert it to otf with any web-site.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!