0

是否可以在 TableLayout 中动态更改 TableRow 的内容?

目前,我有一个简单的表格布局,如下所示:

    <TableLayout
        android:id="@+id/tableid"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center" >

        <TableRow>   
            <TextView
                android:id="@+id/tv1id"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="right"
                android:text="@string/tv1text" />

            <TextView
                android:id="@+id/tv2id"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="right"
                android:text="@string/tv2text" />   

        </TableRow>

        <!-- more TableRows ... -->

    </TableLayout>

我想要做的是用另一个视图(在我的例子中是一个 EditView)动态更改第二列的 TextView。这样做的原因是我希望表格首先以只读模式呈现数据,然后切换到可编辑状态,比如在用户按下编辑按钮之后。

这可能吗?谢谢。

4

1 回答 1

0

是的,这是可能的。不过,这会很痛苦。您将不得不膨胀您的 XML,然后,在收到切换到 EditText 的触发器后,您将找到要删除的视图的 id,然后删除该视图。然后你必须创建一个新的 EditText,给它一个 id 并创建一个新的 LayoutParams,它类似于你要删除的 View。然后将 EditText 添加到视图组。

于 2012-09-07T18:07:19.330 回答