无法在Android中更改按钮文本颜色

7uhlpewt  于 2023-04-04  发布在  Android
关注(0)|答案(3)|浏览(161)

我试着只设置android:textColor="#FFFFFF",这不起作用,所以我检查了问题的其他答案,以找到解决方案。
我尝试创建一个选择器,然后将android:textColor属性设置为这个选择器:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:color="#ffffff" />
<item android:state_focused="true" android:state_pressed="true" android:color="#ffffff" />
<item android:state_focused="false" android:state_pressed="true" android:color="#ffffff" />
<item android:color="#ffffff" />
</selector>

那也没用。
我尝试以编程方式设置文本颜色:verifyButton.setTextColor(getApplication().getResources().getColor(R.color.white));
这也不起作用。按钮文本的颜色是深灰色,我似乎无法将其更改为白色。

sqxo8psd

sqxo8psd1#

你可以试试

setTextColor(Color.parseColor("#FFFFFF"));

仅供参考

为什么要调用getApplication()
getApplication()仅在Activity类和Service类中可用,而getApplicationContext()在Context类中声明。

  • 您应该调用getApplicationContext()而不是getApplication()
    setTextColor(getApplicationContext().getResources().getColor(R.color.白色));

调用getApplicationContext()Direct Activity Class
返回当前进程的单个全局Application对象的上下文。
getApplication() vs. getApplicationContext()

rekjcdws

rekjcdws2#

今天我也遇到了这个问题,我发现我为Button设置hint=“AAA”然后设置textColor,这个是无效的,它只对文本有效,我应该设置textColorHint来帮助那些经历过这个小问题的人

ugmeyewa

ugmeyewa3#

不要使用getApplication(),而使用getContext(),或者使用ContextCompat.getColor()以实现向后兼容

相关问题