2011-11-01 16 views
5

Estoy haciendo un widget similar al de YouTube y el tiempo/noticias predeterminado uno. Tengo una visión aleta en la que agrego diseños de forma dinámica (que contiene un ImageView y una TextView) usando:Cómo cargar imágenes desde la URL en el widget de la aplicación Android?

remoteViews.addView(R.id.viewFlipper, itemViews); 

El problema es que necesito para cargar imágenes desde una URL en ese diseño. Cuál es la mejor manera de hacer esto ?

Tengo un cargador Lazy List pero eso no funciona en RemoteViews e incluso después de la modificación, creo que no es correcto actualizar el widget para cada imagen que pueda agotar la batería demasiado rápido.

Gracias de antemano.

Respuesta

0

No estoy seguro de a qué se refiere sin un ejemplo de código, pero el sitio web Android Developer's tiene mucha información. Como desea imitar el comportamiento de la aplicación YouTube, querrá utilizar un diseño de colección como AdapterViewFlipper o StackView. Todos estos requieren un RemoteViewsService y RemoteViewsFactory. Su mejor opción es tener un fondo Service en ejecución que descargará de forma asíncrona las imágenes que desee.

creo que no es correcto para actualizar el widget para cada imagen, que podría agotar la batería demasiado rápido

Esto depende totalmente de la frecuencia va a actualizar el conjunto de imágenes. Si la aplicación actualiza su conjunto cada 12 horas, entonces no puedo imaginar ningún gasto de batería significativo suponiendo que no haya pérdidas de memoria/tareas de fondo en funcionamiento constante. Si aún le preocupa, puede crear un ContentProvider que almacene todas estas imágenes y solo después de que se haya descargado todo el conjunto dígale a todas las vistas en la colección para actualizar con el nuevo contenido.

Cuestiones relacionadas