Christian Amado

Christian Amado

Ingeniero de software, desarrollador
Diseñado adaptado de Todd Motto

Xamarin: Cargar ListView desde una lista genérica
Jul 12, 2017
lectura de 1 min
Editar entrada

Cuando trabajamos con servicios Web, generalmente éste retorna listas con datos relacionados al tipo de dato que necesitamos para poder trabajar con dichos datos.

Supongamos que tenemos un servicio Web para una biblioteca donde tenemos la lista de libros y deseamos cargar dichos libros en nuestra vista dentro de la aplicación Xamarin. ¿Cómo lo hacemos?

Resulta muy sencillo realizar dicha acción, lo único que necesitamos es heredar de la clase BaseAdapter que permite cargar el objeto ListView de Xamarin con los elementos necesarios para la carga de datos.

public class MiPantallaAdapter : BaseAdapter
{
   List libros;
   Activity context;

   public MiPantallaAdapter(Activity context, List _libros) : base() 
   {
       this.context = context;
       this.libros = _libros;
   }

   public override long GetItemId(int position)
   {
       return position;
   }

   public override Libro this[int position] 
   {  
       get { return libros[position]; }
   }
   
   public override int Count 
   {
       get { return libros.Length; }
   }
   
   public override View GetView(int position, View convertView, ViewGroup parent)
   {
       View view = convertView; // Reutilizar la vista(View) si está disponible.
       
       if (view == null) // Si no existe se crea una nueva, utilizando el archivo de recursos que representa a los items de la lista
           view = context.LayoutInflater.Inflate(Android.Resource.Layout.TU_LAYOUT_PARA_ITEM, null);
       
       view.FindViewById(Android.Resource.Id.Nombre).Text = libros[position];
       
       return view;
   }
}

Con esta porción de código se logra cargar un ListView con datos.

Jun 30, 2017

Consumo de servicio ASMX con Xamarin

Uno de los servicios más conocidos y utilizados en el mundo .NET es el servicio...

Jul 20, 2017

¿Qué versión de ASP.NET Core está instalada?

Para saber que versión de ASP.NET Core tenemos instalada en nuestra máquina se debe ejecutar...