2012-05-14 52 views
32

我正在創建一個使用Switch的Android應用程序。我試圖聽取更改並在更改時獲得價值。我在使用交換機時有兩個問題:Android如何正確獲取交換機的值?

  1. 什麼action listener我使用?
  2. 如何獲得switch值?
+0

什麼是視圖切換? – JoxTraex

+1

我認爲他必須是一個'ToggleButton'或者一個'Checkbox',但標籤'switch-statement'讓我感到困惑,因爲他可能指的是一個switch(int v){}' –

+4

@ JoxTraex否,我在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 
    } 
}