Estoy trabajando en una aplicación en la que quiero mostrar un ProgressBar
, pero quiero reemplazar el Android predeterminado ProgressBar
.
Entonces, ¿cómo puedo personalizar el ProgressBar
?
¿Necesito algunos gráficos y animación para eso?
Leí la siguiente publicación pero no pude hacerlo funcionar:
android
android-progressbar
Shubham Suryawanshi
fuente
fuente
Respuestas:
Personalizar un
ProgressBar
requiere definir el atributo o las propiedades para el fondo y el progreso de su barra de progreso.Cree un archivo XML con nombre
customprogressbar.xml
en sures->drawable
carpeta:custom_progressbar.xml
Ahora necesita establecer la
progressDrawable
propiedad encustomprogressbar.xml
(dibujable)Puede hacer esto en el archivo XML o en la Actividad (en tiempo de ejecución).
Haga lo siguiente en su XML:
En tiempo de ejecución, haga lo siguiente
Editar: diseño xml corregido
fuente
En caso de complejos
ProgressBar
como este,uso
ClipDrawable
.A
Drawable
que recorta otro enDrawable
función delDrawable
valor de nivel actual de este. Puede controlar cuánto se corta el niñoDrawable
en ancho y alto según el nivel, así como la gravedad para controlar dónde se coloca en su contenedor general.Most often used to implement things like progress bars
, aumentando el nivel del sorteo consetLevel()
.He usado estas dos imágenes para hacer esto
CustomProgressBar
.scall.png
ballon_progress.png
MainActivity.java
activity_main.xml
clip_source.xml
En el caso del complejo de
HorizontalProgressBar
cambio justocliporientation
en clip_source.xml como este,Puede descargar la demostración completa desde aquí .
fuente
en tu xml
Y en
res/values/styles.xml
:Y
custom_progress_bar_horizontal
es un xml almacenado en una carpeta dibujable que define su barra de progreso personalizada. Para más detalles ver este blog .Espero que esto ayude.
fuente
La personalización del color de la barra de progreso, es decir, en el caso del tipo de ruleta, necesita un archivo xml e códigos de inicio en sus respectivos archivos java.
Cree un archivo xml y asígnele el nombre de progressbar.xml
Use el siguiente código para obtener la ruleta en varios colores esperados. Aquí usamos el código hexadecimal para mostrar la ruleta en color azul.
fuente
Hay dos tipos de barras de progreso llamadas barra de progreso determinada (duración fija) y barra de progreso indeterminada (duración desconocida).
Los elementos dibujables para ambos tipos de barra de progreso se pueden personalizar definiendo dibujable como recurso xml. Puede encontrar más información sobre estilos de barra de progreso y personalización en http://www.zoftino.com/android-progressbar-and-custom-progressbar-examples .
Personalización de la barra de progreso fija u horizontal:
Debajo de xml hay un recurso dibujable para la personalización de la barra de progreso horizontal.
Personalizar barra de progreso indeterminada
Debajo de xml hay un recurso dibujable para la personalización de la barra de progreso circular.
fuente
Creando ProgressBar personalizado como hotstar.
activity_main.xml
custom_progress_bar.xml
fuente
La forma más sencilla de crear personalizar una barra de progreso en Android:
Inicializar y mostrar diálogo:
Crear método:
Crear diseño XML:
Cree la forma progresscustombg.xml y ponga res / drawable:
fuente
Para usar dibujable personalizado:
(agregar bajo res / dibujable
progress.xml
).my_drawable
puede ser xml, pngLuego, en su diseño, use
fuente
Si desea hacer esto en código, aquí hay una muestra:
El uso de TextView le brinda una opción para cambiar el color, el tamaño y la fuente de su texto. De lo contrario, puede llamar a setMessage (), como de costumbre.
fuente