我有一个包含9行的表格布局。第一个是标题。但是列的数量不同。所以我需要动态地将textview添加到表格行。 我填充表格行并添加固定的第一列的文本。其他coulmns iam试图在循环中添加它。但我只得到第一个牢房。
我的预期出局是这样的:
col# A B C D E F
----------------------------
1 65 6 6 5 6 7
----------------------------
2 6 4 7 4 6 8
列数不能为3到6.但行为8
我得到这样的出局:
col#
----------------------------
1
----------------------------
2
我试图显示第一行。但我只得到第一个细胞。有人可以帮忙吗?
带表格行的我的xml
<?xml version="1.0" encoding="utf-8"?>
<TableRow xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content">
<TextView android:id="@+id/sn4"
android:textSize="25sp"
android:layout_marginTop="15dip"
android:layout_marginLeft="20dip"
style="@style/normalText"
android:textColor="@color/title"
/>
</TableRow>
我有另一个用于textview的xml
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/txtfactor"
android:textSize="25sp"
android:layout_marginTop="15dip"
android:layout_marginLeft="20dip"
style="@style/normalText"
android:textColor="@color/title"
/>
在我的代码中:
tbl =(TableLayout)findViewById(R.id.tbltrail); for(int i = 0; i&lt; = noOfTrials; i ++){ TableRow child =(TableRow)getLayoutInflater()。inflate(R.layout.trial_table,null); child.setId(ⅰ); TextView sno =(TextView)child.findViewById(R.id.sn4); if(i == 0){ sno.setText( “栏#”);
for(int j=0; j<count; j++){
FactorObj factorObj = factorList.get(i);
View row = (View) getLayoutInflater().inflate(R.layout.trial_row_content, null);
TextView factorname = (TextView)row.findViewById(R.id.txtfactor);
factorname.setId(200+j);
Log.v(null, "factor name "+factorObj.getFactorName());
factorname.setText("sdf");
child.addView(row);
}
tbl.addView(child);
}else{
sno.setText(String.valueOf(i));
for(int j=0; j<count; j++){
FactorObj factorObj = factorList.get(i);
View row = (View)
getLayoutInflater().inflate(R.layout.trial_row_content, null);
TextView factorname = (TextView)row.findViewById(R.id.txtfactor);
factorname.setId(100+j);
factorname.setText("ss");
child.addView(row);
}
tbl.addView(child);
}
}
答案 0 :(得分:6)
为此创建一个视图组行
mCell = new CellViewGroup(this,parameters);
和 请参阅xml
中的表格布局 mTableLayout = (TableLayout) findViewById(R.id.mytable);
动态创建表格行
TableRow mRow = new TableRow(this);
将视图组添加到行
mRow.addView(mCell);
将其添加到表格布局
mTableLayout.addView(mRow);
如果你不了解viewgroup只是google it .....