1

现在我正在构建一个简单的表单并且我正在设计它,以便如果用户在单击提交按钮之前没有输入必要的信息,背景会变成红色。之后,如果他们输入了正确的信息,表格就会恢复到以前的样子。

// "if empty then set fields to red" checks
            if (firstLastName.getText().toString().equals("")) {
                firstLastName.setBackgroundColor(Color.RED);
            }
            else
                firstLastName.setBackgroundColor(Color.WHITE);
        }

问题是白色显然不是以前的样子,因为它看起来不同了。有没有办法在不删除用户输入的信息的情况下重置表单?

如果我不清楚,请告诉我,我会尽力详细说明。

4

1 回答 1

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);
}
于 2012-06-18T21:49:17.737 回答