TextView中的字体问题

时间:2014-10-08 20:10:33

标签: android fonts textview

我有一个只包含一个字母的TextView。校准文本的大小,使字母占据整个TextView区域。现在我的一个用户报告了一个问题,即该字母不适合TextView。从附带的屏幕截图中我可以看到她在她的Samsung S4设备上使用某种自定义字体。我确信这是问题所在。以下是一些快照:

ImageView上的TextView中的自定义字体:

Custom font example on TextView

状态栏中的自定义字体:

Custom font example in the Status Bar

TextView中的字母N扭曲:

Distorted N letter on TextView

有没有办法让TextView使用标准的android字体忽略用户应用的任何自定义字体?如何在模拟器或索尼手机上安装自定义字体(没有三星)并复制行为?

2 个答案:

答案 0 :(得分:0)

我的建议:

  1. 在资源文件夹中创建名为fonts的子文件夹。
  2. 放置您要使用的字体(例如ttc或ttf)Set 你的TextView字体。例如:

    yourTextView.setTypeface(Typeface.createFromAsset(getContext()。getAssets(),“fonts / yourFont.ttc”));

  3. 我希望它有所帮助!!

答案 1 :(得分:0)

您可以为自己的应用设置自定义字体。使用TypeFace类。

  1. 在assets文件夹下创建一个名为fonts的文件夹,并将所有字体放入其中(字体格式ttc或ttf。文件夹名称可以是任何内容)
  2. 在你的onCreate方法中添加以下代码。

    TextView mytextview= (TextView) findViewById(R.id.text_view_id);
    
    // Loading Font Face. Replace with your font file name
    Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/your_custom_font.ttf");
    
    // Applying font
    mytextview.setTypeface(tf);
    
  3. 类似的方式,您可以拥有所需的TypeFace,也可以使用与所需TextView相同的TypeFace。

  4. 下面的教程非常好地解释了您的要求,并提供了屏幕截图以获得更好的帮助。 http://www.androidhive.info/2012/02/android-using-external-fonts/

    另外请注意,TypeFace还有很多其他可供选择的选项。你可以参考android文档来了解它们。

    我希望它对你有所帮助。

    谢谢!