首页 > 解决方案 > 更新 Android TableLayout 中 TextView 的内容

问题描述

我有一个 7 列 15 行的表格,每个单元格包含一个 TextView。我想知道是否有一种方法可以在不参考其 id 的情况下更新单个 TextView 的内容 - 即通过能够定位其在表中的位置。

我可以使用下面的代码获取每个单元格的现有值,但看不到调整它以更改单元格值的方法。

 private View getCellAtPos(TableLayout table, int pos) {
    TableRow row = (TableRow) table.getChildAt(pos /7);
    return row.getChildAt(pos % 7);
}

标签: androidandroid-layouttablelayout

解决方案


您的函数 getCellAtPos 返回一个视图对象。您只需将其类型转换为 TextView 对象,因为 View 没有 setText() 方法。

    TextView tv=(TextView)getCellAtPos(table,pos);
    tv.setText("abc");

推荐阅读