6

我可以像这样为我的文本视图设置自定义字体

Typeface typeface = Typeface.createFromAsset(context.getAssets(),"fonts/akshar.ttf");
setTypeface(typeface);

如何将相同的内容设置为默认 Toast,以便能够在 Toast 消息中呈现我的语言环境文本。我可以设置重力、持续时间但不能设置字体。

提前致谢。

4

2 回答 2

5

您可以将自定义 Toast 创建为:

 LayoutInflater inflater = getLayoutInflater();
    View layout = inflater.inflate(R.layout.toast_layout,
                                   (ViewGroup) findViewById(R.id.toast_layout_root));

    TextView text = (TextView) layout.findViewById(R.id.text);
    text.setText("Hello! This is a custom toast!");
    Typeface typeface = Typeface.createFromAsset(context.getAssets(),"fonts/akshar.ttf");
    text.setTypeface(typeface);
    Toast toast = new Toast(getApplicationContext());
    toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
    toast.setDuration(Toast.LENGTH_LONG);
    toast.setView(layout);

toast.show();

有关我们如何创建自定义 Toast 的更多详细信息,请参阅CustomToastView

于 2012-06-30T05:32:30.633 回答
1

Toast 有一个方法setView(),因此您可以设置 TextView 的字体并将相同的 TextView 添加到 Toast 使用

toast.setView(textview);
于 2012-06-30T05:32:42.413 回答