繁体   English   中英

Android - 为警报对话框文本设置多种颜色

[英]Android - Set More Than One Color For Alert Dialog Text

我有一个包含多行文本的AlertDialog 我希望每行文本都有不同的颜色。 关于 go 对此有何看法? 是否可以将跨度前景色设置为字符串变量?

API 30

在此处输入图像描述

    // Create Material Dialog
    MaterialAlertDialogBuilder dialogBuilder = new MaterialAlertDialogBuilder(MainActivity.this, R.style.AlertDialogTheme);
    dialogBuilder.setTitle(getString(R.string.alert_dialog_title));
    SpannableString string = new SpannableString(
            "Text: " + variable1 +
            "\n\nText: " + variable2);
    string.setSpan(new ForegroundColorSpan(Color.RED), 0, string.length(), SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE);
    dialogBuilder.setMessage(string);
    dialogBuilder.show();

正如@Gabe Sechan所提到的,您可以使用ForegroundColorSpan为进入MaterialAlertDialog的一段文本着色,

val materialAlertDialogBuilder = MaterialAlertDialogBuilder( this )
val message = SpannableString( "Hello World" ).apply {
    setSpan( ForegroundColorSpan( Color.BLUE ) , 6 , 11 , SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE )
}
val dialog = materialAlertDialogBuilder.run {
    setTitle( "Some Title" )
    setMessage( message )
    create()
}
dialog.show()

你也可以参考这个讨论。

output(API 28 级): 在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM