0
有没有人有一种快速简便的方法来从Android中的线性布局中删除动态添加的按钮?他们似乎被保存在已保存的实例状态中,当我返回活动时,我不希望他们。删除动态单选按钮
有没有人有一种快速简便的方法来从Android中的线性布局中删除动态添加的按钮?他们似乎被保存在已保存的实例状态中,当我返回活动时,我不希望他们。删除动态单选按钮
您可以使用下面的代码清除线性布局中的所有观点:
LinearLayout myLayout = (LinearLayout)findViewById(R.id.your_linear_layout);
myLayout.removeAllViews();
但是,如果你正在寻找去除仅进行动态添加的视图(你可以欣赏那里有不)这不起作用。
如果你需要做这种方式,你可以做这样的事情
LinearLayout l = (LinearLayout)findViewById(R.id.linearLayout);
List<View> removeViews = new ArrayList<View>();
int count = l.getChildCount();
for (int i = 0; i < count; i++) {
View v = l.getChildAt(i);
if (v != null && v.getTag() != null
&& v.getTag().toString().equals("dynamicView")) {
removeViews.add(v);
}
}
for (View v : removeViews) {
l.removeView(v);
}
请注意v.getTag()!= NULL & & v.getTag()。的toString()。等于( “dynamicView”)部分。您不必这样做,但是,这将是区分添加的视图和静态创建的视图的简单方法。
编辑为了这个,当你创建你需要调用view.setTag(“dynamicView”)的视图工作;当然是