我有一个LinearLayout类,其中包含:TexView | ImageView | EditText | ImageView的。我将最后一个ImageView一直拖到LinearLayout的右侧,EditText运行时间很长,在某些情况下将最后一个ImageView推到视图外(或者它似乎将它推出视图)。我想将EditText设置为总宽度的百分比。我尝试使用LinearLayout参数的重量,但它似乎导致视图得到全部的怪异。例如,下面是对的EditText:将EditText设置为LinearLayout中父宽度的百分比
LinearLayout.LayoutParams lpEt = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT,
.50f);
所有其他视图跟风,但有较小的权重(.2 .2 0.1),他们全部加起来为1.0。但LinearLayout行永远不会正确放置。
我应该找出父母(它是一个ListView)的宽度,然后根据父母的宽度显式设置EditText的宽度还是有更好的方法?
这是什么工作的基础上,通过blessenm提供的答案
//Text
addView(mtextNum, new LinearLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
//ImageView
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
//edit Text:
LinearLayout.LayoutParams lpEditText = new LinearLayout.LayoutParams(0,LayoutParams.WRAP_CONTENT,(float)1.0f);
//ImageView
LinearLayout.LayoutParams ll_params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
2012-01-09
Mike6679
+0
如果您使用的是xml布局。你可以分享给我们,以便我们指出问题。 –
2012-01-09 05:06:50