我有一小段代码,在按下btnTest
- 按钮时会向现有表格添加一个新行(4列)。该新行的每个字段都填充“0”。但是,添加的行的列不均匀分布(列朝向屏幕右侧变小)。我已经在布局文件中创建了这个表的第一行,并且第一行是均匀分布的。有没有办法在Java代码中分隔行(如setLayoutWeight
或其他东西)?
btnTest=(Button)findViewById(R.id.btnTest);
btnTest.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
tr = new TableRow(ScoreScreen.this);
tvScore1 = new TextView(ScoreScreen.this);
tvScore2 = new TextView(ScoreScreen.this);
tvScore3 = new TextView(ScoreScreen.this);
tvScore4 = new TextView(ScoreScreen.this);
tvScore1.setText("0");
tvScore1.setTextSize(25);
tvScore1.setGravity(Gravity.CENTER);
tvScore1.setTextColor(Color.WHITE);
tvScore2.setText("0");
tvScore2.setTextSize(25);
tvScore2.setGravity(Gravity.CENTER);
tvScore2.setTextColor(Color.WHITE);
tvScore3.setText("0");
tvScore3.setTextSize(25);
tvScore3.setGravity(Gravity.CENTER);
tvScore3.setTextColor(Color.WHITE);
tvScore4.setText("0");
tvScore4.setTextSize(25);
tvScore4.setGravity(Gravity.CENTER);
tvScore4.setTextColor(Color.WHITE);
tr.addView(tvScore1);
tr.addView(tvScore2);
tr.addView(tvScore3);
tr.addView(tvScore4);
t2.addView(tr);
}
});
t2=(TableLayout)findViewById(R.id.t2);
t2.setColumnStretchable(0, true);
t2.setColumnStretchable(1, true);
答案 0 :(得分:0)
我终于在这篇文章中找到了一个解决方案: Keeping Columns Aligned In All Rows In An Android Table
将其添加到xlm文件中的table_layout:
android:shrinkColumns="*"
android:stretchColumns="*"