慕斯709654
可以的。有2中方式:1、动态添加的时候为组件设置id,删除的时候根据id查找到对应组件,然后删除2、根据父节点,获取所有父组件下的子组件,然后依次删除。示例:12345678910111213141516171819protected View createView() {//动态添加组件 Button btn = new Button(this);//动态创建按钮 btn.setId(index++); btn.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); btn.setText("aaaaaa" + index); return btn; } private void removeView() {//动态删除组件(按钮) //获取linearlayout子view的个数 int count = linearLayout.getChildCount(); //研究整个LAYOUT布局,第0位的是含add和remove两个button的layout //第count-1个是那个文字被置中的textview //因此,在remove的时候,只能操作的是0<location<count-1这个范围的 //在执行每次remove时,我们从count-2的位置即textview上面的那个控件开始删除~ if (count - 2 > 0) { //count-2>0用来判断当前linearlayout子view数多于2个,即还有我们点add增加的button linearLayout.removeViewAt(count - 2); } }