如何动态设置android layout_height参数为0

时间:2012-12-04 18:11:58

标签: android android-layout


我正在动态创建一个Framelayout。
我动态设置布局参数如下:

   float  weights[] = {80,20} <br>
   FrameLayout flayout = new FrameLayout(context); 
   LayoutParams  lp = new LinearLayout.LayoutParams
                         (LayoutParams.MATCH_PARENT,0,weights[i]; 
   flayout.setLayoutParams(lp);


这里的问题是我试图在LayoutParams中将height参数设置为0,但仍然采用match_parent并以这样的方式显示第一个framelayout占据屏幕高度的20%(实际应该是80)和第二个Framelayout为80%这反过来发生。
任何人都可以帮我解决这个问题。


在此先感谢,

2 个答案:

答案 0 :(得分:0)

我自己找到了解决方案。保存这两个框架布局的viewGroup(LinearLayout)的高度应设置为match_parent。以前它设置为wrap_Content,这是不正确的。

答案 1 :(得分:0)

试试这段代码。

  FrameLayout flayout = new FrameLayout(contex); 
  LayoutParams  lp = (LayoutParams) flayout.getLayoutParams();
  lp.height = 0;
  lp.width = LayoutParams.MATCH_PARENT;
  flayout.setLayoutParams(lp);