可能重复:
Having a problem removing TextViews from a LinearLayout programmatically
嗨,我对这个Android的东西还很陌生,我想知道是否有人能弄明白如何解决我的问题?我在google上查看了有关如何从LinearLayout中删除textView的提示,但没有一个案例有效。
if (breakCheck.isChecked()) {
if (!clickedOnce) {
ll.addView(prompt_break);
prompt_break.setVisibility(View.VISIBLE);
clickedOnce = true;
}
} else {
prompt_break.setVisibility(View.GONE);
ll.removeView(prompt_break);
ll.invalidate;
}
}
我正在尝试在选中复选框时显示TextView,然后每次取消选中该框时都会删除它,但我做的任何事情都可以在完成后删除TextView :(请帮助
答案 0 :(得分:4)
您需要为复选框设置onClickListener
,并将TextView的可见性设置为GONE。此外,您不必删除和添加TextView。试试这个:
breakCheck.setOnClickListener(new OnClickListener(){
if(breakCheck.isChecked()){
prompt_break.setVisibility(View.VISIBLE);
}
else{
prompt_break.setVisibility(View.GONE);
}
};
答案 1 :(得分:2)
要使视图消失,请使用setVisibility()将其可见性设置为GONE(如果要调整布局大小)或INVISIBLE(如果要将空间保留为空)。它通常更好地隐藏它,而不是实际删除它,如果你以后再次重新创建它,它的处理器更便宜。只需为复选框设置onClickListener,并在调用onClickListener时根据复选框的值更改文本视图的可见性。