EditText背景颜色

时间:2011-02-11 20:30:50

标签: java android

我的活动只包含一个巨大的EditText,全屏。

为了与我应用的颜色相匹配,我更改了EditText的背景颜色。但是虽然它占据了整个屏幕,但它只改变了第一行。每次按下回车我都会转到一个新行,该行会获得我想要的背景。

为了做到这一点,我可以设置什么属性?我只是看不到它!

4 个答案:

答案 0 :(得分:3)

我会使用View包装EditText并在View上设置背景颜色。

答案 1 :(得分:1)

为了改变那些带有背景的视图的背景,最好提供自己的图像,然后使用patch9进行适当的调整大小 我希望有帮助

答案 2 :(得分:1)

@everyone:

在寻找同一类问题的解决方案时,我找到了这个页面。在阅读我自己想到的解决方案时:“必须有更好的方法来做到这一点,而不是制作自己的风格和widgetborders,等等,等等......

因此,我向您介绍:1行代码解决方案!没有拖钓。

<your-widget-component-that-has-a-background-color>.getBackground().setColorFilter(Color.<your-desired-color>, PorterDuff.Mode.MULTIPLY);).

它的工作原理如下:

  • “getBackground()”从组件中获取背景
  • “setColorFilter”将调用背景图像本身的过滤
  • “颜色”。确定要传递给过滤器的颜色
  • “PorterDuff.Mode”。设置您想要使用给定颜色和获取的背景图像进行的操作。具有图像编辑软件(GIMP,Photoshop,...)知识的人可能会识别这些模式。基本上,每种模式对颜色如何应用于背景图像具有一定的影响。简单地“覆盖”图像的颜色,同时保留它的渐变,边框等,使用“MULTIPLY”

我没有深刻阅读过PorterDuff类文档,但老实说,这不是一个强大的代码吗?

亲切的问候,

答案 3 :(得分:0)

如何设置EditText小部件的背景颜色:

editText.setBackgroundColor(Color.RED);
相关问题