【问题标题】:Changing the android typeface doesn't work更改 android 字体不起作用
【发布时间】:2012-07-31 23:03:48
【问题描述】:

我正在使用以下代码行更改android应用程序中的字体类型:L

Typeface font = Typeface.createFromAsset(this.getAssets(), "fonts/Abumohammed.ttf"); 
textView.setTypeface(font);

我确定Abumohammed.ttfassets/fonts 文件夹中.. 但字体不会改变,对文本视图没有任何影响!!

【问题讨论】:

  • 您如何确定“textview 已消失”?您是否使用层次结构视图查看它在哪里或为什么它没有显示?
  • 好吧抱歉,它没有消失,但新字体没有任何效果
  • @Adham 我已经在您提供的链接中使用了您的一种字体,并且工作正常。 (半岛电视台.ttf)。
  • @Adham 链接中的所有字体都运行良好

标签: android fonts typeface


【解决方案1】:

我对此感到非常恼火,以至于我想我会分享一些我的挖掘结果。我尝试了一些最终使用后备字体的字体文件。要“修复”其中一些文件,我只需要在 FontForge 中打开文件,然后 File->Generate Font 并重新保存为 TTF。这允许一些未显示的内容正确绘制。

其他人需要将字形从 Microsoft 区域 (U+F030) 移动到 U+0030 范围。

我还没有了解“生成字体”的实际作用。但是,既然我知道如何修复它,我至少可以开始弄清楚它为什么不起作用。我怀疑这只能在 AOSP 树中修复。

【讨论】:

  • 这个应用程序FontForge 帮助我! +1
【解决方案2】:

Android 并不支持所有字体文件。当它失败时,它往往会默默地失败,而是显示默认字体。我不知道 Android 不喜欢其中的一些。

我会找到一些绝对有效的字体such as this one,并尝试它以确保您的其余代码正常。如果您确实确定字体文件不起作用,AFAIK 您别无选择,只能找到其他字体。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-09-10
  • 1970-01-01
  • 2014-02-02
  • 2010-10-31
  • 2016-01-02
  • 2018-09-07
  • 1970-01-01
相关资源
最近更新 更多