100分求问,tablelayout中删除tablerow
--------------------编程问答-------------------- --------------------------start-----------------------------使用removeView(view)方法,里面的那个view是你要删除的tablerow。
table.removeViews(int start,int count)的意思是删除这个table里面的子控件,从start个开始(包括start)删除count个,
例如:
<aa>
<bb>
<ccc>
</ccc>
</bb>
<bb>
</bb>
<bb>
</bb>
</aa>
设aa就是table,它的子控件是3个bb,cc是第一个bb的子控件,
你调用aa.removeViews(0,2)的话最后就只剩下
<aa>
<bb>
</bb>
</aa>
----------------------------over-------------------------------- --------------------编程问答-------------------- 1楼说的是一种方法。。。。但是我想你说的意思是,有若干行,然后每行后面都有个删除键,你点哪行的删除键,就删除哪一行吧?
这样的话,一楼的方法就不是很好用了。这样你就必须判断每行的id。
你可以通过遍历你的TextView中的内容,找到你所点击的那一行,之后再把该行的id设置成一个特殊的id(比如说1000000),然后你再通过removeViewAt(Int id)方法来删除你所指定的那一行。。。。
这样说楼主能明白么? --------------------编程问答--------------------
请问2L这个遍历TextView 该怎么遍历。。每个TextView 都是我是自己用addView动态加载的视图 --------------------编程问答--------------------
for (int i = 0; i < 5; i++) {
TableRow row = new TableRow(this);
TextView t2=new TextView(this);
t2.setText("test"+i);
final Button bu = new Button(this);
bu.setId(i); //将当前row设置为当前Button的ID
bu.setBackgroundResource(R.drawable.del);
bu.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
//根据当前Button的ID来删除当前row
table.removeViewAt(bu.getId());
}
});
row.addView(t2);
row.addView(bu);
table.addView(row, new TableLayout.LayoutParams(WC, WC));
}
补充:移动开发 , Android