Android 如何在不删除标准底部边框的情况下更改EditText的背景色
调用Android 如何在不删除标准底部边框的情况下更改EditText的背景色,android,background,Android,Background,调用EditText.setBackgroundColor(Color.RED)后,我只看到一个红色矩形,其中包含文本,但我只想更改文本背景,并保留标准的下边框,当字段没有焦点时,下边框为灰色,如果有焦点,下边框为蓝色。我可以通过编程来完成吗 如果输入无效,我想将文本背景更改为红色,如果输入有效,则更改为透明。我认为最好的方法是使用drawable/shape.xml作为背景,并在逻辑代码情况下调用EditText.setBackground(some\u other\u shape.xml)。
EditText.setBackgroundColor(Color.RED)
后,我只看到一个红色矩形,其中包含文本,但我只想更改文本背景,并保留标准的下边框,当字段没有焦点时,下边框为灰色,如果有焦点,下边框为蓝色。我可以通过编程来完成吗
如果输入无效,我想将文本背景更改为红色,如果输入有效,则更改为透明。我认为最好的方法是使用
drawable/shape.xml
作为背景,并在逻辑代码情况下调用EditText.setBackground(some\u other\u shape.xml)
。下面是shape filexml
的一个示例,演示了如何使用:
colors.xml
Android
默认透明颜色
因此,只需为您需要的每种情况准备几个形状。另一种方法是使用
layout params
等。但我认为这种方法更快,并且可以在易于理解的代码中为自定义设计提供更多控制。我认为最好的方法是使用drawable/shape.xml
作为背景,并根据逻辑代码情况调用EditText.setBackground(some\other\u shape.xml)
。下面是shape filexml
的一个示例,演示了如何使用:
colors.xml
Android
默认透明颜色
布局参数
等。但我认为这种方法更快,并且可以在易于理解的代码中为自定义设计提供更多控制