2012-05-14 9 views
32

私はSwitchを使用するAndroidアプリケーションを作成しています。私は変更を聞くと、変更されたときに値を取得しようとしています。スイッチを使用する際に2つの質問があります。Androidスイッチから値を正しく取得するにはどうすればよいですか?

  1. 何を使用しますか?action listenerどうすればよいですか?
  2. switchの値を取得するにはどうすればよいですか?
+0

スイッチとはどのようなビューですか? – JoxTraex

+1

何かの理由で彼が 'switch(int v){}'を参照している可能性があるので、彼は 'ToggleButton'または' Checkbox'を意味するはずですが、 'switch-statement'タグが混乱していると思います。 –

+4

@ JoxTraxいいえ、私はAPi 4.0の 'Switch'を持っています – stackoverflow

答えて

63
Switch s = (Switch) findViewById(R.id.SwitchID); 

if (s != null) { 
    s.setOnCheckedChangeListener(this); 
} 

/* ... */ 

public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
    Toast.makeText(this, "The Switch is " + (isChecked ? "on" : "off"), 
        Toast.LENGTH_SHORT).show(); 
    if(isChecked) { 
     //do stuff when Switch is ON 
    } else { 
     //do stuff when Switch if OFF 
    } 
} 
46

それはCompoundButtondocs)から延びているので、変更をリッスンするsetOnCheckedChangeListener()を使用することができます。 isChecked()を使用してボタンの現在の状態を取得します。

関連する問題