Switch

Según la documentación de Google sobre Material Design.

Los Switches conmutan el estado de una opción de configuración. La opción que controla el Switch, así como el estado en que se encuentra, debe quedar claro con la etiqueta correspondiente. Los interruptores tienen las mismas propiedades visuales que los RadioButton.

El interruptor con el texto "on" y "off" que aparece en la imagen está en desuso. Utiliza el interruptor que se muestra aquí en su lugar.

¿Cómo se añade?

I. En tu archivo build.gradle añade la última versión de la librería appcompat.

dependencies {  
    compile 'com.android.support:appcompat-v7:X.X.X' 
    // X.X.X especifica la versión
}

II. Haz que tu activity extienda de android.support.v7.app.AppCompatActivity.

public class MainActivity extends AppCompatActivity {  
    ...
}

III. Declara tu SwitchCompat dentro de cualquier archivo layout.xml.

<android.support.v7.widget.SwitchCompat  
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:checked="true"/>

SwitchCompat es una versión retrocompatible del widget Switch.

¿Cómo modificar el estilo?

I. Declara tu estilo personalizado dentro de tu archivo styles.xml.

<style name="MySwitch" parent="Theme.AppCompat.Light">  
    <!-- Color del _thumb_ activo y la pista (30% de transparencia) -->
    <item name="colorControlActivated">@color/indigo</item>

    <!-- Color del _thumb_ inactivo -->
    <item name="colorSwitchThumbNormal">@color/pink</item>

    <!-- Color de la pista inactiva (30% de transparencia) -->
    <item name="android:colorForeground">@color/grey</item>
</style>  

II. Aplica este estilo a tu SwitchCompat con el atributo android:theme.

<android.support.v7.widget.SwitchCompat  
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:checked="true"
    android:theme="@style/MySwitch"/>

Android añade automáticamente un 30% de transparencia al atributo colorControlActivated y android:colorForeground para el widget SwitchCompat.

Escrito originalmente por Dmytro Danylyk en MaterialDoc