我正在动态创建一个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%这反过来发生。
任何人都可以帮我解决这个问题。
在此先感谢,
答案 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);