У меня есть LinearLayout
который я зациклил несколько new Button
объектов new Button
. Как я могу очистить этот div правильно (например, удалить все кнопки)? Я пробовал несколько раз (безуспешно), чтобы сделать это, но им нечего показать.
** редактировать **
Я не уверен, помогает ли это, но в flex/AS3 я бы сделал что-то вроде:
while(myView.numChildren) myView.removeChildAt(0);
** немного код **
View col1 = findViewById(R.id.col1);
for(final Map.Entry<String,HashMap<String,String>> entry : _nav.entrySet()) {
Button item = new Button(this);
item.setText(entry.getKey());
item.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
openCol2(entry);
}
});
((LinearLayout) col1).addView(item);
}
private final void openCol2(Map.Entry<String,HashMap<String,String>> entry) {
View col2 = findViewById(R.id.col2);
// here is where I want to clean out col2. Right before I add more buttons.
for(int i = 0; i < _nav.size(); ++i) {
Button item = new Button(this);
//item.setText(entry.getKey());
((LinearLayout) col2).addView(item);
}
}
Попробуй это
LinearLayout col2 = (LinearLayout)findViewById(R.id.col2);
col2.removeAllViews();
Предположим: R.id.col2 имеет тип LinearLayout else, чтобы сделать его более общим, чтобы преобразовать его в ViewGroup. Надеюсь эта помощь !!!