Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android上的自定义字体_Android_User Interface - Fatal编程技术网

Android上的自定义字体

Android上的自定义字体,android,user-interface,Android,User Interface,我想在Android应用程序中使用自定义字体,但使用自定义字体似乎很痛苦?! 我可以通过编程将自定义字体添加到每个TextView->大量样板代码中来设置它。我可以创建一个新类CustomTextView Extendes TextView,并在构造函数中添加setTypeface->无xml上下文感知属性帮助 是否有其他方法设置自定义字体?按XML、按样式、按主题 提前谢谢 另外,是否可以通过XML设置下划线?使用此代码更改字体文本视图 TextView newfont; newfont=(T

我想在Android应用程序中使用自定义字体,但使用自定义字体似乎很痛苦?! 我可以通过编程将自定义字体添加到每个TextView->大量样板代码中来设置它。我可以创建一个新类CustomTextView Extendes TextView,并在构造函数中添加setTypeface->无xml上下文感知属性帮助

是否有其他方法设置自定义字体?按XML、按样式、按主题

提前谢谢


另外,是否可以通过XML设置下划线?

使用此代码更改字体文本视图

TextView newfont;
newfont=(TextView) findViewById(R.id.textView1);
Typeface font=Typeface.createFromAsset(getAssets(), "fonts/DejaVuSerif-Italic.ttf");
newfont.setTypeface(font);
newfont.setText("This is the new font Text");

从web下载DejaVuSerif-Italic.ttf文件,并将其放入资产文件夹中的字体文件夹中。

您可以在资产/字体下包含自定义字体,然后使用

您可以在XML中指定字体,例如

<com.github.browep.customfonts.view.FontableTextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="This is in a custom font"
    app:font="MyFont-Bold.otf" />


该代码支持FontableTextView和FontableButton,但如果需要,可以很容易地扩展以支持其他小部件类型。

您看过样式吗?是的,但是我没有发现任何有用的东西。与下划线相同。似乎必须通过编程来解决这个问题,但在应用程序范围内更改字体确实很痛苦。我正在尝试创建一个样式,该样式通过继承更改TextAppearance样式的字体值,问题是访问位于/assets/fonts下的字体。我不知道如何以我的样式xml访问ttf文件。通常通过在包含将分配给
TextView
s的文本的字符串资源中添加
标记来实现底层xml的可能复制。但是,我遇到过一些情况,使用自定义字体会阻止这些标记工作,而使文本(或其中一部分)加下划线的唯一方法是以编程方式使用
SpannableString
下划线span
。有关如何使用这些类的示例,请参见。您显然不理解这个问题。您是否可以帮助我将字体从外部存储应用到“textview”上?如何在运行时按活动或片段设置字体?