Circular progress

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

Minimiza los cambios visuales que ocurren mientras tu aplicación carga representando cada operación con un único indicador de progreso. Por ejemplo, una operación de recarga debería mostrar ya sea una barra de progreso o un circulo, pero no ambos.

¿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 ProgressBar dentro de cualquier archivo de layout, layout.xml.

<ProgressBar  
    style="@style/Widget.AppCompat.ProgressBar"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

¿Cómo modificar el estilo?

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

<style name="CircularProgress" parent="Theme.AppCompat.Light">  
    <item name="colorAccent">@color/indigo</item>
</style>  

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

<ProgressBar  
    android:theme="@style/CircularProgress"
    style="@style/Widget.AppCompat.ProgressBar"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

Errores de compatibilidad

El componente ProgressBar no se muestra con un estilo de Material en versiones pre Lollipop devices.

Escrito originalmente por Yakiv Mospan en MaterialDoc