我在sqllite中有某些数据,每次更新时,我单击保存按钮,我想将数据显示到表布局中,以便为更新的数据添加更多行。
我有一些代码,但它只显示更新后的数据替换以前的数据,并且我希望在数据更新时添加更多行。
我知道这只是为了在表格布局中添加一行,但是如何才能添加更多行呢?
TableLayout tl=(TableLayout)findViewById(R.id.maintable);
TableRow tr1 = new TableRow(this);
tr1.setLayoutParams(new LayoutParams( LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
TextView textview = new TextView(this);
textview.setText(data);
//textview.getTextColors(R.color.)
textview.setTextColor(Color.YELLOW);
tr1.addView(textview);
tl.addView(tr1, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
发布于 2011-03-04 02:06:49
通过在表布局中添加行的方法,可以在tableLayout
对象中添加多个TableRow
实例
tl.addView(row1);
tl.addView(row2);
等等。
发布于 2011-03-04 01:09:27
您这样做是对的;每次您需要添加一行时,都可以简单地添加新的TableRow()
,等等。不过,您可以更容易地从XML
中inflate
新行。
发布于 2011-03-04 04:19:26
解决方案1.将您的TableLayout tl设置为类成员变量,仅在启动类时调用TableLayout tl=(TableLayout)findViewById(R.id.maintable);
。当按钮被点击时,直接使用tl,例如。tl.addView(row),不要再调用FindViewById。因此,下一个新行不会替换前一个新行。
解决方案2.每次单击按钮后,将更新的数据保存到一个数组中,然后通过循环遍历数组来重新呈现整个表布局。
https://stackoverflow.com/questions/5183968
复制相似问题