我正在开发一个Android应用程序,我需要在事件发生时刷新表。也就是说,当用户点击按钮时,该表现在应该更改显示新数据。所以我为此目的使用了removeAllViews。然后我将动态地将行添加到表中。发生的事情是,当行数小于前一行数时,则显示新行,在它们下面,还会显示旧行。你能告诉我需要做些什么。
TableLayout tableLayout1;
public void displayPanel1(int co) // dynamically add table
{
LinearLayout ll = (LinearLayout)findViewById(R.id.asdf);
LayoutParams lp = new LayoutParams(android.view.ViewGroup.LayoutParams.MATCH_PARENT, android.view.ViewGroup.LayoutParams.WRAP_CONTENT);
for(int i=0;i<co;i++) {
TableRow tR = new TableRow(this);
for(int j=0;j<12;j++) {
TextView tv2=new TextView(this);
tv2.setText(i+j+""+"\n"+"h");
tR.addView(tv2);
}
tableLayout1.addView(tR);
}
ll.addView(tableLayout1, lp);
}
在click事件中我写了tableLayout1.removeAllViews();并再次调用displayPanel()函数
答案 0 :(得分:0)
布局很有意思。在更改布局时,它正在正确刷新。我改变了布局
TableLayout.LayoutParams parms = new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
tableLayout1.setLayoutParams(PARMS);