📜  安卓 |如何更改 Toast 字体?(1)

📅  最后修改于: 2023-12-03 15:39:03.779000             🧑  作者: Mango

安卓 | 如何更改 Toast 字体?

Toast 是 Android 开发中经常用到的一个轻量级的提示框,其字体大小、颜色等都是默认的,并不能直接在 XML 文件中修改。但是可以通过代码动态修改 Toast 的样式。

代码实现

以下为示例代码,可以在自己的项目中进行修改:

Toast toast = Toast.makeText(this, "Hello, World!", Toast.LENGTH_SHORT);
TextView textView = toast.getView().findViewById(android.R.id.message);
textView.setTextColor(Color.RED);
textView.setTextSize(20);
textView.setTypeface(Typeface.createFromAsset(getAssets(), "fonts/your_font.ttf"));
toast.show();

其中,Toast.makeText 创建了一个 Toast 对象,传入了上下文、提示文本和提示时长。接着,通过 toast.getView().findViewById(android.R.id.message) 获取到 Toast 的 TextView 对象,即提示文本所在的控件,通过 setTextColorsetTextSizesetTypeface 分别修改文本颜色、大小、字体。

setTypeface 中,通过 Typeface.createFromAsset 从 assets 目录中加载自定义字体,可以将 your_font.ttf 替换为自己的字体文件名。

效果展示

以下是修改后的 Toast 效果图:

toast_customization
注意事项
  • Toast 是 UI 组件,只能在主线程中调用,否则将会抛出异常。
  • 在设置字体时,如果字体文件不存在或路径不正确,将会抛出异常。