3

如何显示这样的自定义Toast

在此处输入图像描述

4

1 回答 1

4

我们可以SpannableString将此消息用作文本。

像这个块:

public void showToast(){
   SpannableString span=new SpannableString("This is a Colorful Spannable text!");
    span.setSpan(new ForegroundColorSpan(Color.CYAN), 10, 11, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    span.setSpan(new ForegroundColorSpan(Color.GRAY), 11, 12, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    span.setSpan(new ForegroundColorSpan(Color.GREEN), 12, 13, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    span.setSpan(new ForegroundColorSpan(Color.MAGENTA), 13, 14, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    span.setSpan(new ForegroundColorSpan(Color.RED), 14, 15, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    span.setSpan(new ForegroundColorSpan(Color.LTGRAY), 15, 16, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    span.setSpan(new ForegroundColorSpan(Color.BLUE), 16, 17, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    span.setSpan(new ForegroundColorSpan(Color.YELLOW), 17, 18, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

    Toast.makeText(this,span, Toast.LENGTH_LONG).show();
}

showToast();

这是结果:

在此处输入图像描述

于 2013-12-07T13:44:57.387 回答