隐藏并显示线性布局

我有一个线性布局,里面还有一些button。我想让触摸时可见,再次触摸时不可见。

我怎么能做到这一点?

Solutions Collecting From Web of "隐藏并显示线性布局"

LinearLayout one = (LinearLayout) findViewById(R.id.one); one.setVisibility(View.GONE); 

我build议你在onclick事件中使用GONE而不是INVISIBLE,因为使用View.GONE ,布局的位置将不可见,应用程序不会显示有未使用的空间,而不像View.INVISIBLE那样会留下空隙是用于布局的

在您的代码上添加一个布尔值

 boolean flag = false; 

然后在xml的线性布局上添加android:clickable = true

然后使用这个代码作为参考

 your_linear_layout = new OnClickListener(){ @Override public void onClick(View v) { if (flag){ // means true your_linear_layout.setVisibility(View.INVISIBLE); flag = false; } else{ your_linear_layout.setVisibility(View.VISIBLE) flag = true; } } }; 

还没有尝试过,但这应该工作..

干杯

添加setOnTouchListener到linearLayout获取触摸事件为:

 linearLayout.setOnTouchListener(new OnTouchListener(){ public boolean onTouch(View v, MotionEvent event){ if (event.getAction() == MotionEvent.ACTION_DOWN) { // show-hide view here return true; } if (event.getAction() == MotionEvent.ACTION_UP) { // show-hide view here return true; } return false; } }); 

使视图可见使用yourview.setVisibility(View.VISIBLE)和不可见使用yourview.setVisibility(View.INVISIBLE)

你应该用户

隐形 – : mButton.setVisibility(View.INVISIBLE);

vsible – : mButton.setVisibility(View.VISIBLE);

把这个代码放在button的onclick listner中检查条件。