2012-02-10 5 views
0

onClickListenerを切り替えてボタンを作成したり削除したりすることはできますか?<ToggleButton> onClickListener - ボタンの作成と削除?

現在、私のコードは次のようになります。

Button minuskegle, minuskugle, pluskugle, pluskegle, plusmidkegle, minusmidkegle; 
ToggleButton toggle; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    toggle = (ToggleButton) findViewById(R.id.bRedGreen); 
    toggle.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      pluskugle = (Button) findViewById(R.id.bBallhole); 
      minuskugle = (Button) findViewById(R.id.bBallhole); 

      pluskegle = (Button) findViewById(R.id.bKegle); 
      minuskegle = (Button) findViewById(R.id.bKegle); 

      plusmidkegle = (Button) findViewById(R.id.bKeglemid); 
      minusmidkegle = (Button) findViewById(R.id.bKeglemid); 

     if(toggle.isChecked()) 
     { 
      minuskugle.setBackgroundResource(R.drawable.redballinhole); 
      minuskegle.setBackgroundResource(R.drawable.redkegle); 
      minusmidkegle.setBackgroundResource(R.drawable.midkegleminus); 
     } 

     else 
     { 
      pluskugle.setBackgroundResource(R.drawable.whiteballinhole); 
      pluskegle.setBackgroundResource(R.drawable.kegleb); 
      plusmidkegle.setBackgroundResource(R.drawable.midkegleplus); 
     } 

     } 

    }); 
} 

私は(toggle.isChecked())場合により、それはボタンを作成する必要が

十分

答えて

0

が簡単にそれらを削除:)

新しいビューを挿入する親ビューを見つけるボタン、ビューにボタンを挿入し、ボタンを作成:あなたはクリック機能内部にあり、これは活動を参照していないので、

RelativeLayout parentView = (RelativeLayout) findViewById(R.id.parentView); 
Button buttonTest = new Button(MyActivity.this); 
parentView.addView(buttonTest); 

MyActivity.thisが必要です。

+0

乾杯、どうすれば削除できますか? そして、作成時にボタンの内容をどのように定義するのですか? アンドロイド:ID = "@ + ID/bKeglemid" アンドロイド:layout_width = "0.0dip" アンドロイド:layout_height = "fill_parent" アンドロイド:layout_weight = "1.0" iは、例えば、それがこれを継承させたい場合 アンドロイド:背景= "@ drawable/midkegleplus" Imageview.Scaletype = "fill_parent" –

+0

parentView.removeView(buttonTest); ...それがあなたのために働いた場合、答えとしてマークすることを忘れないでください! – Yahel

+0

私はプログラミングの最初の段階にいます。 これ(myactivity.this) myactivityの代わりに何を書いていますか? アプリのアクティビティ名を大文字と大文字の両方で試しました。 –

関連する問題