2011-04-06 57 views
1

我想添加一行下面的新行。我的意思是我有一個包含2個文本框和1個提交按鈕的UI。當我填寫文本框並按提交時,文本框的內容將添加到前一個的下方。這是用listview還是tableview完成的?請給我建議,以及如何實施該技術。並且在項目被添加到列表視圖中並且當我點擊任何列表位置時,它執行不同的-2活動。請幫助我,這很緊急。我是Android新手,深入討論。如何在表格視圖中添加一行下面的新行

TextView exampleTextView = (TextView) findViewById(R.id.field1); 
exampleTextView.setText("wedwqe"); 
TableLayout table = (TableLayout)findViewById(R.id.table); 
TableRow tr = (TableRow) findViewById(R.id.row); 
tr.addView(exampleTextView); 
// table.removeView(tr); 
table.addView(tr); 

和XML文件是:

<?xml version="1.0" encoding="utf-8"?> 
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/table" 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content" 
    android:layout_gravity="center" 
    android:background="#DDDDDD" 
    android:stretchColumns="1" > 
<TableRow xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/row"> 

    <TextView android:id="@+id/field1" 
     android:text=" " 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:padding="3dip" 
     android:textStyle="bold" 
     android:textSize="18dip" 
    /> 

    <TextView android:id="@+id/field2" 
     android:padding="3dip" 
     android:text=" " 
     android:textSize="18dip" 
     android:gravity="right" 
    /> 
</TableRow> 
</TableLayout> 

回答

0

您可以使用addView(View child, int index),你可以找到在here

我希望這有助於

+0

的TextView exampleTextView =(TextView的)findViewById(R .id.field1); exampleTextView.setText(「wedwqe」); TableLayout table =(TableLayout)findViewById(R.id.table); TableRow tr =(TableRow)findViewById(R.id.row); tr.addView(exampleTextView); // table.removeView(tr); table.addView(tr); – SRam 2011-04-06 15:15:27

+0

它給錯誤和強制關閉......指定的孩子已經有一個父母。您必須先調用子對象的父對象的removeView()。 – SRam 2011-04-06 15:16:17

+0

我並不完全明白你想做什麼,但'examokeTextView'已經屬於一個父類,所以你可以用'parent = getParent()'得到它的父類,然後用'parent.removeView(exampleTextView)然後將其添加到'tr'。 – raukodraug 2011-04-06 15:22:09

相關問題