Android How do I correctly get the value from a Switch?

actionlistener, android, model-view-controller

Solution

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

Hint: `isChecked` is the new switch value [`true` or `false`] not the old one.

Problem

I'm creating a `Android` application which uses a Switch. I'm trying to listen for changes and get the value when changed. I have two questions when using switches: - What `action listener` do I use? - How do I get the the `switch` value?

Original source