1 回答
TA贡献1828条经验 获得超3个赞
你可以这样做:-
根据您的要求,您可以使用 if 条件。
可绘制文件:- 两种颜色:-
第一:-
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke
android:width="1dp"
android:color="@color/sky_blue"
android:drawable="@android:color/transparent" />
<solid android:color="@color/message_fragment_button" />
<corners
android:bottomLeftRadius="@dimen/dp_10"
android:bottomRightRadius="@dimen/dp_10"
android:topLeftRadius="@dimen/dp_10"
android:topRightRadius="@dimen/dp_10" />
</shape>
第二:-
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke
android:width="1dp"
android:color="@color/sky_blue"
android:drawable="@android:color/transparent" />
<solid android:color="@color/sky_blue" />
<corners
android:bottomLeftRadius="@dimen/dp_10"
android:bottomRightRadius="@dimen/dp_10"
android:topLeftRadius="@dimen/dp_10"
android:topRightRadius="@dimen/dp_10" />
</shape>
在 Java 中:-
if (MessageConfirmed.equals("Yes")) {
btn_confirm.setText("Confirmed");
btn_confirm.setBackground(ContextCompat.getDrawable(context,
R.drawable.confirm_button_blue));
btn_confirm.setEnabled(false);
} else {
btn_confirm.setText("Confirm");
btn_confirm.setBackground(ContextCompat.getDrawable(context,
R.drawable.confirm_button_green));
btn_confirm.setEnabled(true);
}
但是,您需要在 XML 文件中定义最初的背景颜色。
添加回答
举报