现在我正在构建一个简单的表单,我正在设计它,以便如果用户在单击提交按钮之前没有输入必要的信息,则背景变为红色。如果他们输入了正确的信息,表格就会恢复到以前的状态。
// "if empty then set fields to red" checks
if (firstLastName.getText().toString().equals("")) {
firstLastName.setBackgroundColor(Color.RED);
}
else
firstLastName.setBackgroundColor(Color.WHITE);
}
问题在于白色显然不像以前那样,因为它看起来不同。有没有办法重置表单而不删除用户输入的信息?
如果我不清楚请告诉我,我试着详细说明。
答案 0 :(得分:1)
如何设置和删除滤色器而不是更改背景颜色:
if (firstLastName.getText().toString().equals("")) {
// 0xFFFF0000 is red
firstLastName.getBackground().setColorFilter(0xFFFF0000, PorterDuff.Mode.DARKEN);}
else {
//Setting to null removes filter
firstLastName.getBackground().setColorFilter(null);
}