ImageLoader Ejemplo MonoTouch ES
Hola chavos, en esta ocasión les mostrare otra manera de descargar en segundo plano imagenes de la Web, en esta ocasión utilizare la clase ImageLoader.
Hay ocasiones en que uno quiere conectar una aplicaron, en este caso una app de iOS a la web, y si se puede Xamarin ofrece muchas alternativas, incluso en mi opinión, mas alternativas que el mismo Objective-C; en esta ocasión haremos uso de una clase que ya viene en Xamarin, la clase ImageLoader y pues bueno sin mas preámbulo, aquí les muestro el código:
using System;
using System.Drawing;
using MonoTouch.Foundation;
using MonoTouch.UIKit;
using MonoTouch.Dialog.Utilities;
namespace ImageLoaderSample
{
public partial class ImageLoaderSampleViewController : UIViewController,IImageUpdated
{
public ImageLoaderSampleViewController () : base ("ImageLoaderSampleViewController", null)
{
}
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
Uri uri = new Uri ("http://futboldemipais.com/wp-content/oqey_gallery/galleries/america/galimg/club-america-wallpaper-502.jpg");
var mientrasTanto = ImageLoader.DefaultRequestImage (uri,this);
if (mientrasTanto == null) {
imagen.Image = UIImage.FromBundle ("Juventus_old_badge.png");
} else {
imagen.Image = mientrasTanto;
}
// Perform any additional setup after loading the view, typically from a nib.
}
#region IImageUpdated implementation
public void UpdatedImage(Uri uri){
imagen.Image = ImageLoader.DefaultRequestImage (uri, this);
}
#endregion
}
}
Bueno como podemos observar, primero necesitamos tener en nuestras referencias el paquete de MonoTouch.Dialog, para poder ejecutar todo esto, para describir rápidamente el código, primero importamos la paqueteria que necesitaremos, posteriormente creamos nuestra clase haciendo que esta herede de una clase padre llamanda IImageUpdated la cual se encuentra dentro del repositorios de MonoTouch.Dialog.Utilities de hay en mas se crea una variable de tipo Uri, se inicializa la clase ImageLoader y pues una vez que la imagen se ha descargado, la clase ImageLoader lanza una alerta a la misma clase y esta al recibirla la actualiza. es decir, la variable mientrasTanto inicializa la clase ImageLoader y una vez que la clase completo la descarga, notifica a la clase principal y esta cambia la imagen, es por eso que se utiliza el método UpdatedImage, ya que este es el que va actualizar nuestro ImageView.
Por Ultimo estos son los resultados reales corriendo en mi teléfono, como nota la descarga no duro mas de 1s:
La primer imagen es la que muestra en lo que carga y la segunda es la que descarga del link. Bueno chavos eso es todo por hoy, espero les haya servido de utilidad y pues cualquier cosa, comentario, duda, propuesta, etc. por favor dejenlo en la sección de comentarios, bueno me despido...adios ^_^/
Hay ocasiones en que uno quiere conectar una aplicaron, en este caso una app de iOS a la web, y si se puede Xamarin ofrece muchas alternativas, incluso en mi opinión, mas alternativas que el mismo Objective-C; en esta ocasión haremos uso de una clase que ya viene en Xamarin, la clase ImageLoader y pues bueno sin mas preámbulo, aquí les muestro el código:
using System;
using System.Drawing;
using MonoTouch.Foundation;
using MonoTouch.UIKit;
using MonoTouch.Dialog.Utilities;
namespace ImageLoaderSample
{
public partial class ImageLoaderSampleViewController : UIViewController,IImageUpdated
{
public ImageLoaderSampleViewController () : base ("ImageLoaderSampleViewController", null)
{
}
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
Uri uri = new Uri ("http://futboldemipais.com/wp-content/oqey_gallery/galleries/america/galimg/club-america-wallpaper-502.jpg");
var mientrasTanto = ImageLoader.DefaultRequestImage (uri,this);
if (mientrasTanto == null) {
imagen.Image = UIImage.FromBundle ("Juventus_old_badge.png");
} else {
imagen.Image = mientrasTanto;
}
// Perform any additional setup after loading the view, typically from a nib.
}
#region IImageUpdated implementation
public void UpdatedImage(Uri uri){
imagen.Image = ImageLoader.DefaultRequestImage (uri, this);
}
#endregion
}
}
Bueno como podemos observar, primero necesitamos tener en nuestras referencias el paquete de MonoTouch.Dialog, para poder ejecutar todo esto, para describir rápidamente el código, primero importamos la paqueteria que necesitaremos, posteriormente creamos nuestra clase haciendo que esta herede de una clase padre llamanda IImageUpdated la cual se encuentra dentro del repositorios de MonoTouch.Dialog.Utilities de hay en mas se crea una variable de tipo Uri, se inicializa la clase ImageLoader y pues una vez que la imagen se ha descargado, la clase ImageLoader lanza una alerta a la misma clase y esta al recibirla la actualiza. es decir, la variable mientrasTanto inicializa la clase ImageLoader y una vez que la clase completo la descarga, notifica a la clase principal y esta cambia la imagen, es por eso que se utiliza el método UpdatedImage, ya que este es el que va actualizar nuestro ImageView.
Por Ultimo estos son los resultados reales corriendo en mi teléfono, como nota la descarga no duro mas de 1s:
La primer imagen es la que muestra en lo que carga y la segunda es la que descarga del link. Bueno chavos eso es todo por hoy, espero les haya servido de utilidad y pues cualquier cosa, comentario, duda, propuesta, etc. por favor dejenlo en la sección de comentarios, bueno me despido...adios ^_^/
Comments
Post a Comment