Saltar al contenido

Cómo cambiar el color de progreso de la barra de progreso en Android

Ya no necesitas buscar más por todo internet ya que llegaste al espacio indicado, tenemos la solución que quieres encontrar y sin problemas.

Solución:

Para una barra de progreso horizontal, puede usar un ColorFiltertambién, así:

progressBar.getProgressDrawable().setColorFilter(
    Color.RED, android.graphics.PorterDuff.Mode.SRC_IN);

Barra de progreso roja con filtro de color

Nota: Esto modifica la apariencia de todas las barras de progreso en su aplicación. Para modificar solo una barra de progreso específica, haga lo siguiente:

Drawable progressDrawable = progressBar.getProgressDrawable().mutate();
progressDrawable.setColorFilter(Color.RED, android.graphics.PorterDuff.Mode.SRC_IN);
progressBar.setProgressDrawable(progressDrawable);

Si la barra de progreso es indeterminada, use getIndeterminateDrawable() en vez de getProgressDrawable().

Desde Lollipop (API 21) puede establecer un tinte de progreso:

progressBar.setProgressTintList(ColorStateList.valueOf(Color.RED));

Barra de progreso roja con tinte de progreso

Esto no es programático, pero creo que podría ayudar a mucha gente de todos modos.
Probé mucho y la forma más eficiente fue agregar estas líneas a mi ProgressBar en el archivo .xml:

            android:indeterminate="true"
            android:indeterminateTintMode="src_atop"
            android:indeterminateTint="@color/secondary"

Entonces, al final, este código lo hizo por mí:


Esta solución funciona para API 21+

Lamento que no sea la respuesta, pero ¿qué impulsa el requisito de establecerlo desde el código? Y .setProgressDrawable debería funcionar si está definido correctamente




    
        
        
    



    
        
            
            
        
    



    
        
            
            
        
    



Finalizando este artículo puedes encontrar los comentarios de otros administradores, tú aún eres capaz insertar el tuyo si te apetece.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *