如何获得TextView的`layout_weight`?

时间:2013-01-15 09:14:40

标签: android textview layoutparams

我有一个TableLayout和一行TextViews。我想找到layout_weight的{​​{1}},但我无法弄清楚如何。我尝试了以下内容:

TextView

TableRow.LayoutParams lp = tv1.getLayoutParams();

在第一种情况下,我得到类型不匹配:“无法从ViewGroup.LayoutParams转换为TableRow.LayoutParams”,第二种情况正常,但ViewGroup.LayoutParams lp = tv1.getLayoutParams(); 没有ViewGroup.LayoutParams字段

所有不同类型的weight都令人困惑,我无法确定在哪里使用。

2 个答案:

答案 0 :(得分:0)

试试这个

TextView text = new TextView(v.getContext());
text.setLayoutParams(new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1f));

尝试this链接

答案 1 :(得分:0)

你第一次尝试时差不多了。你只需要转换为正确的类型:

TableRow.LayoutParams lp = (TableRow.LayoutParams) tv1.getLayoutParams();

LinearLayout.LayoutParams的任何子类(包括TableRow.LayoutParams)都会有一个weight字段。