📜  如何更改 Android 应用程序中工具栏标题的字体?

📅  最后修改于: 2022-05-13 01:55:39.633000             🧑  作者: Mango

如何更改 Android 应用程序中工具栏标题的字体?

Google Fonts 提供了多种字体,可用于在 Android Studio 中设置文本样式。合适的字体不仅可以增强用户界面,还可以表示和强调文本的目的。在本文中,您将学习如何更改 Android 应用程序中工具栏标题的字体系列。在Android应用程序中,工具栏标题预设在应用程序的上部。下面是一个示例图像,显示了工具栏标题所在的位置。

工具栏标题

有两种方法可以更改工具栏标题的字体。

方法一:在activity_main.xml文件中添加子TextView

在方法 1 中,只需转到 activity_main.xml 文件并在工具栏小部件中添加一个具有 font-family 属性的 TextView。 activity_main.xml文件的完整代码如下。

XML


  
    
  
        
  
    
  


Java
import android.graphics.Typeface;
import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
  
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
  
        Toolbar toolbar = findViewById(R.id.toolbar);
  
        // Custom title
        TextView textCustomTitle = (TextView) findViewById(R.id.custom_title);
  
        // Custom font
        Typeface customFont = Typeface.createFromAsset(this.getAssets(), "fonts/sans-serif-smallcaps.ttf");
  
        // Set
        textCustomTitle.setTypeface(customFont);
  
        setSupportActionBar(toolbar);
    }
}


Kotlin
import android.graphics.Typeface
import android.os.Bundle
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
import androidx.appcompat.widget.Toolbar
  
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
  
        val toolbar: Toolbar = findViewById(R.id.toolbar)
  
        // Custom title
        val textCustomTitle: TextView = findViewById(R.id.custom_title)
  
        // Custom font
        val customFont = Typeface.createFromAsset(this.assets, "fonts/sans-serif-smallcaps.ttf")
  
        // Set
        textCustomTitle.typeface = customFont
        setSupportActionBar(toolbar)
    }
}


XML


  
    
  
        
  
    
  


输出界面:

方法 2:通过以编程方式设置 TextFont

首先,在项目的src/main/assets/fonts/中添加一个字体文件。然后为工具栏和文本标题创建变量并调用findViewById()方法。从指定的字体数据创建一个新的字体。最后在文本标题中设置字体。下面是MainActivity 的完整代码。 Java/MainActivity.kt文件。

Java

import android.graphics.Typeface;
import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
  
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
  
        Toolbar toolbar = findViewById(R.id.toolbar);
  
        // Custom title
        TextView textCustomTitle = (TextView) findViewById(R.id.custom_title);
  
        // Custom font
        Typeface customFont = Typeface.createFromAsset(this.getAssets(), "fonts/sans-serif-smallcaps.ttf");
  
        // Set
        textCustomTitle.setTypeface(customFont);
  
        setSupportActionBar(toolbar);
    }
}

科特林

import android.graphics.Typeface
import android.os.Bundle
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
import androidx.appcompat.widget.Toolbar
  
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
  
        val toolbar: Toolbar = findViewById(R.id.toolbar)
  
        // Custom title
        val textCustomTitle: TextView = findViewById(R.id.custom_title)
  
        // Custom font
        val customFont = Typeface.createFromAsset(this.assets, "fonts/sans-serif-smallcaps.ttf")
  
        // Set
        textCustomTitle.typeface = customFont
        setSupportActionBar(toolbar)
    }
}

下面给出了相应的activity_main.xml文件。

XML



  
    
  
        
  
    
  


输出界面: