首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在表格布局中动态添加行

如何在表格布局中动态添加行
EN

Stack Overflow用户
提问于 2011-03-04 01:04:15
回答 3查看 118.1K关注 0票数 59

我在sqllite中有某些数据,每次更新时,我单击保存按钮,我想将数据显示到表布局中,以便为更新的数据添加更多行。

我有一些代码,但它只显示更新后的数据替换以前的数据,并且我希望在数据更新时添加更多行。

我知道这只是为了在表格布局中添加一行,但是如何才能添加更多行呢?

代码语言:javascript
复制
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));
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-03-04 02:06:49

通过在表布局中添加行的方法,可以在tableLayout对象中添加多个TableRow实例

代码语言:javascript
复制
tl.addView(row1);
tl.addView(row2);

等等。

票数 26
EN

Stack Overflow用户

发布于 2011-03-04 01:09:27

您这样做是对的;每次您需要添加一行时,都可以简单地添加新的TableRow(),等等。不过,您可以更容易地从XMLinflate新行。

票数 2
EN

Stack Overflow用户

发布于 2011-03-04 04:19:26

解决方案1.将您的TableLayout tl设置为类成员变量,仅在启动类时调用TableLayout tl=(TableLayout)findViewById(R.id.maintable);。当按钮被点击时,直接使用tl,例如。tl.addView(row),不要再调用FindViewById。因此,下一个新行不会替换前一个新行。

解决方案2.每次单击按钮后,将更新的数据保存到一个数组中,然后通过循环遍历数组来重新呈现整个表布局。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5183968

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档