自定义字体显示工件

时间:2012-05-06 19:59:07

标签: android view fonts artifact

我为自己的应用程序使用自定义字体。代码很容易集成它:

Typeface tf = Typeface.createFromAsset(getApplicationContext().getAssets(),
            "fonts/PermanentMarker.ttf");
    textview.setTypeface(tf);

但是我的一些文本视图中有工件:http://desmond.imageshack.us/Himg11/scaled.php?server=11&filename=screenshot2012050621514.png&res=landing

我真的不知道它来自哪里。你有什么想法吗?

2 个答案:

答案 0 :(得分:1)

错误来自硬件加速。当强制TextView使用软件渲染时,一切都会变得很好。

答案 1 :(得分:0)

我遇到了同样的问题,并确保它与 API 级别 21 视图高度无关,因为它也出现在 API-21 之下。

对我来说,一个工件出现在 TextView 的末端/右边缘附近,而不与文本本身相交。

我没有想出根解决方案,但我有一个解决方法:我在 TextView 顶部放置了一个虚拟视图,该视图与 TextView 具有相同的背景样式TextView 并将其约束到 TextView 的末尾,宽度等于工件宽度,高度等于 TextView

如果包含特殊字体的 Button / android:clickable="false" 是可点击的,则需要将 or 设置为虚拟视图