删除EditText的背景颜色

时间:2012-02-09 15:12:53

标签: android

我有一个editText,我想将它的背景颜色设置为红色,如下所示:

 RegistrationCountry.setBackgroundColor(Color.RED);

现在我想删除这种背景颜色。 问题使用:

RegistrationCountry.setBackgroundColor(Color.TRANSPARENT);

我是否会丢失Edittext大纲。

3 个答案:

答案 0 :(得分:6)

您可以使用

RegistrationCountry.setBackgroundResource(android.R.drawable.editbox_background);

将背景设置为标准背景图像。

当您调用任何setBackgroundX()方法时会出现问题,因为这会替换当前背景(即“大纲”),因此当您致电setBackgroundColor(Color.RED)时用红色替换轮廓,然后用透明度替换红色。您需要做的是将红色替换为原始背景,就像上面的行一样。

答案 1 :(得分:0)

如果您只想突出显示EditText对象,可以改为使用PorterDuff:http://developer.android.com/reference/android/graphics/PorterDuff.Mode.html

设置颜色:

RegistrationCountry.getBackground().setColorFilter(Color.RED, PorterDuff.Mode.SRC_IN);

删除颜色:

RegistrationCountry.getBackground().clearColorFilter();

答案 2 :(得分:0)

尝试通过以下方式设置背景:

RegistrationCountry.setBackgroundResource(0);