我该如何改变禁用按钮的文本颜色?

3

目前,在我的视图中,我有如下内容:

public void DisableNextBtn(object sender, TextChangedEventArgs e)
{
    if (String.IsNullOrEmpty(emailentry.Text))
    {
        NextButton.IsEnabled = false;
        NextButton.TextColor = Color.FromRgba(0xFF, 0xFF, 0xFF, 0x80);
    }
    else
    {
        NextButton.IsEnabled = true;
        NextButton.TextColor = Color.White;
    }
}

然而,尽管我想将按钮的TextColor设置为上面的颜色,但它不会从默认的暗色禁用状态文本颜色改变。我该如何更改按钮的TextColor?

我已经有一个自定义按钮了,所以我想也许在我的自定义渲染器中可以改变禁用状态按钮的TextColor,但我不是完全确定。

这是用于Xamarin.Forms Android应用程序的。


请使用 NextButton.SetTextColor(Color.FromRgba(0xFF, 0xFF, 0xFF, 0x80)); 替代 NextButton.TextColor = Color.FromRgba(0xFF, 0xFF, 0xFF, 0x80); - Ishita Sinha
@IshitaSinha 这是关于Xamarin.Forms的。 - Euridice01
1
也许这篇帖子会有所帮助?https://dev59.com/e47ea4cB1Zd3GeqPF8tm#32425851 - Ishita Sinha
使用drawable来为禁用/触摸/聚焦状态更改颜色。 - Quick learner
5个回答

2
            btn.SetTextColor(Color.Rgb(0:255, 0:255, 0:255));

2
请解释您的答案。 - Mazz
NextButton.SetTextColor(Color.Rgb(0,255,0)); 这将使文本变为绿色。 - Karim Elshaweish

0
在Xamarin Forms Android中,我刚刚在我的styles.xml文件中为禁用的textcolor执行了此操作。我相信按钮textcolor也是如此。
<item name="android:textColor">@android:color/black</item>

0
如果您想更改颜色使其与背景颜色相同,这意味着您想隐藏文本,您可以这样做:
button1.Text = "";
button1.Enabled = true;

0

您可以使用 NextButton.ForeColor = Color.FromRgba(0xFF, 0xFF, 0xFF, 0x80); 来更改它。


0
mBtnEmail.setTextColor(ContextCompat.getColor(getContext(), R.color.text_gray));

这是用于 Xamarin.Forms Android 应用程序的内容。 - Euridice01

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接