Sou*_*abh 13 android tablelayout textview
void init()
{
intcolumnwidth1 = int_scr_wd*55;
intcolumnwidth1 = intcolumnwidth1/100;
for (int i = 0; i < strarr.length-1; i++)
{
strinarr = fun1.split(strarr[i].trim(),"^");
tr1 = (TableRow) new TableRow(this);
txt1=new TextView(this);
txt1.setWidth(intcolumnwidth1);
txt1.setText(strinarr[0]);
tr1.addView(txt1);
tl.addView(tr1,new TableLayout.LayoutParams(layoutParams));
}
}
Run Code Online (Sandbox Code Playgroud)
场景是这样的,当我第一次打开这个页面时,它动态地在表格布局中添加行...但是如果在一段时间后数据库中的数据发生变化...当我点击刷新按钮时,它会在旧数据之后附加新数据表格布局......我需要的是如何刷新或删除表格布局中已存在的textview的解决方案...
感谢名单..
Ste*_*teD 17
row = (TableRow)findViewById(R.id.row);
table.removeView(row);
Run Code Online (Sandbox Code Playgroud)
Fer*_*Fer 16
我写的这个方法删除了除第一行之外的所有行.如果您不想删除标题行,则非常有用,例如:
private void cleanTable(TableLayout table) {
int childCount = table.getChildCount();
// Remove all rows except the first one
if (childCount > 1) {
table.removeViews(1, childCount - 1);
}
}
Run Code Online (Sandbox Code Playgroud)
Rol*_*loc 12
我意识到这是一个老线程,但当我遇到这个没有一个像样的答案时,我感到震惊.
我是这样做的:
TableLayout table = (TableLayout) findViewById(R.id.myTable);
table.removeAllViews();
Run Code Online (Sandbox Code Playgroud)
这将删除所有子视图,在这种情况下是行和所有内容.您的描述似乎并不是要删除一行,而是要删除它们然后再次加载行.上面的代码将执行删除部分.
其他解决方案要求您的行具有唯一ID.
如果他们没有唯一ID,那么如何使用:
tl.removeView(rowIndex);
Run Code Online (Sandbox Code Playgroud)
在任何情况下,您都应该尝试学习如何使用SimpleCursorAdapter或CursorAdapter,因为它们专门用于在列表中显示数据库查询的内容.请参阅使用AdapterView绑定到数据.
| 归档时间: |
|
| 查看次数: |
32634 次 |
| 最近记录: |