动态添加布局属性

时间:2013-06-01 04:18:10

标签: android

我已动态添加了LinearLayout,并在其中添加了TextView。现在我必须添加背景,根据我的要求格式化它们。所以我几乎没有问题。这是我的代码:

LinearLayout parentLayout = (LinearLayout) findViewById(R.id.master);
LinearLayout Linear1 = new LinearLayout(this);
Linear1.setOrientation(LinearLayout.HORIZONTAL);
Linear1.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
        LayoutParams.MATCH_PARENT));
Linear1.setId(1);
TextView tvLeft = new TextView(this);
tvLeft.setText("Hello");
tvLeft.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
        LayoutParams.WRAP_CONTENT));
Linear1.addView(tvLeft);
parentLayout.addView(Linear1);

我几乎没有问题:

  • 如何添加可绘制资源作为我的背景?

我试过这个:

Linear1.setBackgroundResource(getResources().getDrawable(R.drawable.gradient_pink));

编译器收到错误消息:

  

View类型中的方法setBackgroundResource(int)不适用于参数(Drawable)

  • 如何访问以实用方式设置id的元素?
  • 如何设置width = 0dip?

请帮我解决这些问题。

1 个答案:

答案 0 :(得分:2)

试试这个

Linear1.setBackgroundResource(R.drawable.gradient_pink);

Linear1.setBackgroundDrawable(getResources().getDrawable(R.drawable.gradient_pink));

如何访问以实用方式设置ID的元素?

使用findViewById(yourid)本身