【问题标题】:btn.setEnabled(false); does not make the button text grayed out in targetSdkVersion 25btn.setEnabled(false);不会使 targetSdkVersion 25 中的按钮文本变灰
【发布时间】:2017-08-08 13:26:31
【问题描述】:
将 Android Studio 更新到 2.3 和 gradle 版本 3.3 后,
btn.setEnabled(false);
禁用按钮上的文本颜色不会变灰。功能运行良好,但文本颜色存在问题,用户可能会误解。
btn.setTextColor() 是一个选项,但它可能很乏味。任何其他替代方案都会有所帮助..
【问题讨论】:
标签:
android
android-studio
button
【解决方案1】:
if (btn.isEnabled() == true)
{
btn.setTextColor(int Color);
}
else
{
btn.setTextColor(int Color);
}
它肯定会起作用。可以分别定义颜色。
【解决方案2】:
试试这个:
来自java端:
button.setTextColor(getApplication().getResources().getColor(R.color.red));
or
button.setTextColor(0xff0000); //SET YOUR COLOR
or
button.setTextColor(Color.parseColor("#ff0000"));
在 xml 中:
<Button android:id="@+id/mybtn"
android:text="text textx "
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:textColor="#ff0000" /> <-- SET TEXT COLOR HERE -->
参考:Link
【解决方案3】:
试试这个:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- disabled state -->
<item android:state_enabled="false" android:color="#9D9FA2" />
<item android:color="#000"/>
</selector>
发件人:Stackoverflow