Android:Afollestad材质对话框操作按钮文本颜色

问题描述 投票:0回答:3

我一直在使用一个名为material-dialogs by afollestad的库。我需要更改正负按钮动作的文本颜色。

MaterialDialog(this).show {
            positiveButton("yes") {
                clearData()
                goToLoginPage()
            }
            negativeButton("cancel") { dismiss() }
            message("Some message")
        }

以上是显示材料对话框的代码。对于按钮参数,只能给出按钮的标题。我的要求是将“是”更改为绿色文本颜色,将“取消”更改为红色文本颜色。是否可以使用此库?

android material-design android-button material
3个回答
2
投票

好的,你可以在stylesThe里面的appTheme中覆盖三行,给它自己的颜色。

更改对话框标题颜色

<item name="md_color_title">@color/yourTitleColor</item>

更改对话框内容颜色

<item name="md_color_content">@color/yourContentColor</item>

更改对话框正面和负面按钮颜色

<item name="md_color_button_text">@color/yourPositiveNegativeColor</item>

更改对话框背景颜色

<item name="md_background_color">@color/yourDialogBgColor</item>

更改对话框分隔线颜色

<item name="md_divider_color">@color/yourDialogDividerColor</item>

编辑:

由于OP告诉他要为Positive和Negative按钮提供不同的颜色,所以库中似乎没有解决方案,但我们可以使用下面给出的解决方法。通过使用java方法Html.from,我们可以为每个按钮文本设置自己的颜色。

val yesText = "<font color='#1B1ED8'>Yes</font>"
val cancelText = "<font color='#44D81B'>Cancel</font>"

MaterialDialog(this).show {
    positiveButton(text = Html.fromHtml(yesText))
    negativeButton(text = Html.fromHtml(cancelText))
    message(R.string.Some_message)
}

1
投票

在发布问题之前总是阅读文档!

检查此链接是否有主题和对话框文本颜色:material-dialog > docs > Text Color


0
投票

尝试此代码,.positiveColor()和.negativeColor()并更改为项目的gradle版本

 // Material Dialogs
implementation 'com.afollestad.material-dialogs:core:0.9.6.0'

查看完整示例并下载源代码。

https://github.com/afollestad/material-dialogs/blob/master/documentation/CORE.md#text-color

© www.soinside.com 2019 - 2024. All rights reserved.