2011-11-14 11 views
5

Quiero hacer una animación "ocupada" de Android, con una imagen similar a la predeterminada.¿Cómo hacer una animación predeterminada de cargador de Android?

De esta manera:

enter image description here

+4

Bienvenido a StackOverflow. No hiciste una pregunta en realidad. Supongo que es "¿Cómo hacerlo?" De todos modos, investigue un poco y trate de resolver un problema por su cuenta antes de publicarlo aquí. Luego publique una pregunta específica con detalles sobre qué exactamente no funcionó y qué probó. Incluye pequeños fragmentos de código, capturas de pantalla de tu intento y una descripción de la duración decente, de acuerdo con lo que sea necesario * (1 oración por lo general no es suficiente) *. ¡Gracias! –

+1

http://developer.android.com/reference/android/widget/ProgressBar.html – Selvin

Respuesta

3

Si necesita algo como esto en su aplicación para Android, se puede utilizar un ProgressBar. Ofrece un setIndeterminate()-method que lo hace mostrar un círculo giratorio infinito (como el de su ejemplo).

Si se necesita otro drawable, puede usar el setIndeterminateDrawable()-method.

Si lo que desea es una imagen animada de este círculo giratorio (por ejemplo, para su carga proceso Ajax), se puede encontrar uno aquí: http://www.ajaxload.info/

+1

¡Dios mío, eso era lo que necesitaba! Muchas gracias. – sztembi

+0

Entonces, debes aceptar la respuesta. –

1

sólo tiene que utilizar una imagen estática y girarlo. Esto le dará el efecto deseado.

ImageView image = (ImageView) findViewById(R.id.refreshicon); 

float ROTATE_FROM = 0.0f; // from what position you want to rotate it 
float ROTATE_TO = 10.0f * 360.0f; // how many times you want it to rotate in one 'animation' (in this example you want to fully rotate -360 degrees- it 10 times) 

RotateAnimation r = new RotateAnimation(ROTATE_FROM, ROTATE_TO, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); 
r.setDuration(7500); // here you determine how fast you want the image to rotate 
r.setRepeatCount(Animation.INFINITE); // how many times you want to repeat the animation 
r.setInterpolator(new LinearInterpolator()); // the curve of the animation; use LinearInterpolator to keep a consistent speed all the way 

image.startAnimation(r); 
Cuestiones relacionadas