12

線形レイアウトが 1 つあり、その中にボタンがいくつかあります。タッチすると表示され、もう一度タッチすると非表示になります。

どうすれば作れますか??

4

4 に答える 4

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

onclick イベントで INVISIBLE の代わりに GONE を使用することをお勧めします。これは 、レイアウトの場所が表示されず、レイアウト用に意図されたギャップが残るのView.GONEとは異なり、アプリケーションに未使用のスペースがないように見えるためです。View.INVISIBLE

于 2013-11-06T07:27:09.427 に答える
3

コードにブール値を追加します

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;
        }

    }

};   

まだこれを試していませんが、これはうまくいくはずです..

乾杯

于 2013-01-14T06:21:33.263 に答える
2

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;
  }
});

View を可視化して使用するためyourview.setVisibility(View.VISIBLE)、および Invisible で使用するためyourview.setVisibility(View.INVISIBLE)

于 2013-01-14T05:43:41.070 に答える
0

あなたが使用する必要があります

見えない -:mButton.setVisibility(View.INVISIBLE);

表示可能 -: mButton.setVisibility(View.VISIBLE);

このコードをボタンのonclickリスナーに入れ、if条件をチェックします。

于 2013-01-14T05:40:40.623 に答える