android 自定义字体
In this tutorial, we’ll explain how to set up android custom fonts in TextViews and Buttons in our application.
在本教程中,我们将说明如何在应用程序的TextViews和Buttons中设置android自定义字体。
Android自定义字体 (Android Custom Fonts)
Android SDK comes with a set of standard fonts that can be styled by using a few XML attributes. Let’s look at them.
Android SDK附带了一组标准字体,可以使用一些XML属性来设置样式。 让我们看看它们。
- android:fontFamily : This is used to change the default fonts of the application. We can choose the font from among the following types.
The default fontFamily is
android:fontFamily :这用于更改应用程序的默认字体。 我们可以从以下类型中选择字体。sans-serif
.
android:fontFamily requires minimum API level as 16.默认的fontFamily是
sans-serif
。
android:fontFamily需要的最低API级别为16。 - android:typeface : This XML attribute won’t have any effect if the fontFamily is already used(Unless the API level is less than 15, in which case the fontFamily attribute would be ignored). normal or sans is the default type of this attribute. Following are the values acceptable.
- android:textStyle : This attribute takes in values : bold, italic and normal either individually or combined such as
android:textStyle=”bold|italic”
. android:textStyle :此属性可以单独或结合使用值: 粗体 , 斜体和普通,例如android:textStyle=”bold|italic”
。
Let’s club android:fontFamily
and android:textStyle
and display the different variants of a TextView.
让我们android:textStyle
android:fontFamily
和android:textStyle
并显示TextView的不同变体。
The styles.xml which contains the different style variants is given below.
下面给出了包含不同样式变体的styles.xml。
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="Regular">
<item name="android:fontFamily">sans-serif</item>
<item name="android:textStyle">normal</item>
<item name="android:textSize">28sp</item>
<item name="android:text">sans-serif</item>
</style>
<style name="Italic">
<item name="android:fontFamily">sans-serif</item>
<item name="android:textStyle">italic</item>
<item name="android:textSize">28sp</item>
<item name="android:text">sans-serif</item>
</style>
<style name="Bold">
<item name="android:fontFamily">sans-serif</item>
<item name="android:textStyle">bold</item>
<item name="android:textSize">28sp</item>
<item name="android:text">sans-serif</item>
</style>
<style name="BoldItalic">
<item name="android:fontFamily">sans-serif</item>
<item name="android:textStyle">bold|italic</item>
<item name="android:textSize">28sp</item>
<item name="android:text">sans-serif</item>
</style>
<style name="RegularCondensed">
<item name="android:fontFamily">sans-serif-condensed</item>
<item name="android:textStyle">normal</item>
<item name="android:textSize">28sp</item>
<item name="android:text">sans-serif-condensed</item>
</style>
<style name="ItalicCondensed">
<item name="android:fontFamily">sans-serif-condensed</item>
<item name="android:textStyle">italic</item>
<item name="android:textSize">28sp</item>
<item name="android:text">sans-serif-condensed</item>
</style>
<style name="BoldCondensed">
<item name="android:fontFamily">sans-serif-condensed</item>
<item name="android:textStyle"