0
    final TableLayout table = (TableLayout) findViewById(R.id.tableLayout);
    TableRow row = new TableRow(this);


    TextView t2 = new TextView(this);
    t2.setText("test");
    row.addView(t2);

    Button bu = new Button(this);
    bu.setBackgroundResource(R.drawable.del);
    bu.setOnClickListener(new Button.OnClickListener() {

        @Override
        public void onClick(View v) {

            //I need to delete the tablerow
                            //how to do?

        }

    });
    row.addView(bu);

    table.addView(row, new TableLayout.LayoutParams(WC, WC));

** 我想删除 bu.setOnClickListener 中的 tablerow 如何做 removeViewAt() ,我找不到 indexId **

4

1 回答 1

1

使用removeView删除 tablerow 为:

table.removeView(row);

注意:如果他们没有唯一的 id,那么使用:

table.removeView(rowIndex);

并通过使用removeViewAt

for(int i = 0, j < table.getChildCount(); i < j; i++){ 
    // then, you can remove the the row you want... 
    // for instance... 
    TableRow row = getChildAt(i); 
    if( something you want to check ) { 
        removeViewAt(i); 
        // or... 
        removeView(row); 
    } 
} 
于 2012-05-09T12:24:17.107 回答