我在表格行中有三个textview,但是textview的定位没有正确对齐,我在tablelayout中的tablerow里面添加了textview,如何设置textview的权重? Plzz帮帮我
TableLayout table= (TableLayout) findViewById(R.id.table);
TableRow tableRow=new TableRow(this);
TextView txt1=new TextView(this);
txt1.setTextSize(20);
TextView txt2=new TextView(this);
txt2.setTextSize(20);
TextView txt3=new TextView(this);
txt3.setTextSize(20);
txt1.setText("Name");
txt2.setText("Quantity");
txt3.setText("Unit");
tableRow.addView(txt1);
tableRow.addView(txt2);
tableRow.addView(txt3);
table.addView(tableRow);
答案 0 :(得分:0)
您可以在下面设置weightSum
。
TableRow.LayoutParams tableRowparam = new TableRow.LayoutParams(); tableRowparam.weight=0.50f;
txt1.setLayoutParams(tableRowparam);
在上层代码中,我0.50f
表示2
中有TextView
TableRow
。你可以根据你的要求改变。
答案 1 :(得分:0)
如果你必须将重量设置到应该缩放的孩子身上。
1表示默认情况下100%缩放,如果您希望3个textvies均匀分布设置0.33作为每个的重量。
从下面的代码中了解您的所有textview:
使用TableLayout.LayoutParams
TableRow.LayoutParams trlp = new TableRow.LayoutParams(0, TableRow.LayoutParams.MATCH_PARENT, 0.33f);
tvFirst.setLayoutParams(trlp); //tvFirst is first textview
tr.add(tvFirst);
由于