如何以编程方式为linearlayout设置背景颜色?

时间:2012-10-06 20:55:30

标签: android android-layout

如何以编程方式为线性布局设置背景颜色?我尝试了以下代码,但没有工作:

LinearLayout footer = new LinearLayout(activity);
footer.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, 8));
footer.setBackgroundColor(Color.parseColor("##ffb5d6e1"));
((LinearLayout)v).addView(footer);

4 个答案:

答案 0 :(得分:3)

我认为你的问题在于你的问题:

footer.setBackgroundColor(Color.parseColor("##ffb5d6e1"));

删除额外的'#'符号,使其符合:

footer.setBackgroundColor(Color.parseColor("#b5d6e1"));

我还删除了'ff',因为你实际上是将不透明度设置为100%,如果你只使用六个字符长的十六进制值,这默认就完成了。

答案 1 :(得分:1)

你走在正确的轨道上,但是犯了一个非常轻微的错误。

您使用的颜色格式错误。来自Android的官方文档,

  

支持的格式为:#RRGGBB #AARRGGBB或以下之一   名称:'红色','蓝色','绿色','黑色','白色','灰色','青色',   'magenta','yellow','lightgray','darkgray','grey','lightgrey',   'darkgrey','aqua','fuchsia','lime','maroon','navy','olive',   '紫色','银色','青色'。

因此,基本上您使用错误的颜色格式用于parseColor()方法。只需删除一个额外的#,你就可以了。

footer.setBackgroundColor(Color.parseColor("#ffb5d6e1"));

<强>奖金

为简单起见,您还可以从颜色中删除不透明度组件。您使用“ff”将不透明度设置为100%,但这也是默认行为。所以你可以删除这个组件并保持简单,就像这样,

footer.setBackgroundColor(Color.parseColor("#b5d6e1"));

答案 2 :(得分:0)

基本上这就是你需要设置背景颜色

please follow the following steps

实例化线性布局的视图 LinearLayout m =(LinearLayout)findViewByid(R.id.line1); m.setBackground(R.color.back);

答案 3 :(得分:0)

简单代码

LinearLayout m=findViewById(R.id.l3);
l3.setBackgroundColor(Color.parseColor("#84C8A9"));