Time Pickers

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

Un picker de tiempo se ajusta a la configuración de tiempo preferida por el usuario, por ejemplo, un formato de 12 horas o de 24 horas.

Un dialog picker se utiliza para utilizar un tiempo concreto (horas:minutos) en móvil.

¿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 verisón
}

II. Haz que tu actividad extienda de android.support.v7.app.AppCompatActivity e implementa la interfaz TimePickerDialog.OnTimeSetListener.

public class MainActivity extends AppCompatActivity  
    implements TimePickerDialog.OnTimeSetListener

III. Crea tu TimePickerDialog configurando un context, la implementación del listener, la hora seleccionada en un comienzo, el minuto y un boolean indicando si el dialog debería mostrar un formato de 12 o 24 horas.

TimePickerDialog timePickerDialog = new TimePickerDialog(  
    context, listener, startHour, startMinute, is24HourFormat);

IV. Muestra tu dialog con el método show de TimePickerDialog.

timePickerDialog.show();  

¿Cómo modificar el estilo?

I. Declara un drawable.xml para el fondo del dialog.

<?xml version="1.0" encoding="utf-8"?>  
<!-- From: support/v7/appcompat/res/drawable/abc_dialog_material_background_light.xml -->  
<inset xmlns:android="http://schemas.android.com/apk/res/android"  
    android:insetLeft="16dp"
    android:insetTop="16dp"
    android:insetRight="16dp"
    android:insetBottom="16dp">

    <shape android:shape="rectangle">
        <corners android:radius="2dp" />
        <solid android:color="@color/indigo" />
    </shape>

</inset>  

II. Declara un estilo personalizado en el archivo de estilos styles.xml.

    <style name="MyDialogTheme" parent="Theme.AppCompat.Light.Dialog.Alert">
        <item name="colorControlNormal">@color/indigo</item>
        <item name="colorControlActivated">@color/pink</item>
        <item name="textColorAlertDialogListItem">@color/indigo</item>
        <item name="colorAccent">@color/pink</item>
        <item name="android:textColorPrimary">@color/indigo</item>
        <item name="android:windowBackground">@drawable/background_dialog</item>
    </style>

III. Configura tu estilo personalizado como parámetro del DatePickerDialog.

TimePickerDialog timePickerDialog = new TimePickerDialog(  
    context, R.style.MyDialogTheme, listener, 
    startHour, startMinute, is24HourFormat);

IV. Muestra el dialog con el método show de TimePickerDialog.

timePickerDialog.show();  

Time Picker con un tema oscuro

I. Utiliza el tema R.style.Theme_AppCompat_Dialog_Alert como parámetro de style en el constructor del TimePickerDialog.

TimePickerDialog dialog = new TimePickerDialog(  
    context, R.style.Theme_AppCompat_Dialog_Alert, 
    listener, startingHour, startingMinute, is24HourFormat);

Note: Puedes utilizar un estilo osculo personalizado configurando su parent con el valor Theme.AppCompat.Light.Dialog.Alert