2010-12-21 9 views
13

Estoy usando una AsyncTask para descargar Imágenes para mi Listview, porque no quiero que la descarga de las Imágenes bloquee mi UI-Thread. Mientras se cargan las imágenes, quiero mostrar un círculo de progreso animado en el lugar donde estará la imagen.Android: Mostrar círculo de progreso como Google lo hace en sus aplicaciones

Pero no puedo encontrar una Imagen del círculo de progreso. ¿Qué es el identificador de la fuente? o hay otra manera? ¿Alguien tiene un enlace a esta imagen?

Respuesta

22

Mira el progress bar. Puede funcionar (y lo hace por defecto, AFAIR) en modo indeterminado, lo que significa que muestra un círculo giratorio, como el que estás pidiendo. Sé que esto no es una imagen, pero lo que puedes hacer es colocar un FrameLayout en lugar de la imagen, con la barra de progreso como único hijo. Luego, una vez que finaliza la carga de las imágenes, quite la barra de progreso y agregue la imagen.

+0

Esta sugerencia funciona bastante bien, solo la probé yo mismo. Puede ser difícil dependiendo del número de imágenes, pero a menos que a alguien se le ocurra la resolución de la barra de progreso giratoria incorporada, parece un enfoque bastante bueno. – Squonk

11

definir esta variable global ProgressDialog pd;

Justo antes launche la AsyncTask hacer:

pd = ProgressDialog.show(CurrentClassName.this,"This is the title","This is the detail text",true,false,null); 

Cuando su hacer onPostExecute sólo llamar pd.dismiss();

Para más detalles ver: ProgressDialog

Deberá tener consideraciones especiales para que funcione cuando gira el dispositivo mientras el cuadro de diálogo está activo.

+0

sólo quiero mostrar el progreso circly, sin ningún texto ... –

+0

Sí, he entendido que . – blindstuff

3

Desea una ProgressBar indeterminada. Echar un vistazo a la página web del desarrollador -

ProgressBar

5

Este es un ejemplo de un archivo de diseño para la actividad de introducción con una imagen y el progreso círculo barra:

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" > 

    <ImageView 
     android:id="@+id/imageView" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:contentDescription="@string/intro_description" 
     android:scaleType="fitXY" 
     android:src="@drawable/intro" /> 

    <ProgressBar 
     android:id="@+id/progress" 
     style="?android:attr/progressBarStyleInverse" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:layout_marginTop="150dp" 
     android:visibility="visible" /> 

</FrameLayout> 
+0

No actualiza las imágenes hasta que se reutilicen –

Cuestiones relacionadas