选中复选框后从LinearLayout中删除TextView

时间:2013-02-03 02:45:04

标签: android

  

可能重复:
  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 :(请帮助

2 个答案:

答案 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时根据复选框的值更改文本视图的可见性。