5 - Android Listas Sencillas
-
Upload
amanda-luque -
Category
Documents
-
view
10 -
download
2
description
Transcript of 5 - Android Listas Sencillas
-
PROGRAMACIN DE APPS ANDROID (NATIVO) CREACIN DE LISTAS
Vamos a realizar como primer ejercicio, la creacin de una lista sencilla, que nos
servir para poder realizar la lista de las pelculas en nuestro ejemplo. Para ello vamos a
utilizar un objeto adaptador, que nos servir para enlazar un AdapterView y los datos de la
lista que queremos mostrar en la pantalla. Por tanto, un adaptador es una coleccin de
datos, a la que le asignamos una vista para que se pueda mostrar por pantalla.
El primer paso es crearnos el layout del tipo LinearLayout para esta lista. Como va a
ser una lista, vamos a utilizar un ListView que tiene un android:id="@android:id/list" y un
TextView que tiene el id android:id="@android:id/empty
Ahora tenemos que modificar la actividad que hace referencia a este layout, y
tenemos que declararnos un array con los elementos que queremos mostrar, y declarar el
adaptador de esos elementos, para finalmente asociarlo a la lista que tiene el id list
-
package com.example.prueba;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListAdapter;
import android.widget.ListView;
public class Principal extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_principal);
//Creacin del vector con los elementos a mostrar
String[] array = new String[] {
"Primero",
"Segundo",
"Tercero",
"Cuarto"};
//Creacin del Adaptador con una vista por defecto suministrada por android
ListAdapter adaptador = new ArrayAdapter(this,android.R.layout.simple_list_item_1, array);
//Seleccionamos donde iran los elementos con findViewById y lanzamos el adaptador
ListView lv = (ListView) findViewById(android.R.id.list);
lv.setAdapter(adaptador);
}
}
-
Ilustracin 1 - Vista del Emulador
Compilamos, y ejecutamos la aplicacin en un emulador o en dispositivo fsico y vemos
como efectivamente estos elementos se muestran en la pantalla.
LISTA CLICKABLE
Para poder comprobar que las listas se han creado con xito, y poder escuchar lo
que contiene cada uno de los elementos, vamos a utilizar la funcin onListItemClick, que
viene por defecto, pero le vamos a hacer un override (o reescritura) haciendo uso de la
librera Toast, que nos proporciona la posibilidad de mostrar una alerta por pantalla.
Adems vamos a decir que nuestra actividad es una extensin de ListActivity.
En siguiente cdigo muestra cmo hacer esto (hemos resaltado las modificaciones
realizadas):
package com.example.prueba;
//import android.app.Activity;
import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
-
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class Principal extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_principal);
String[] array = new String[] {
"Primero",
"Segundo",
"Tercero",
"Cuarto"};
ListAdapter adaptador = new ArrayAdapter(this, android.R.layout.simple_list_item_1, array);
ListView lv = (ListView) findViewById(android.R.id.list);
lv.setAdapter(adaptador);
}
//Funcion que muestra por pantalla el mensaje teniendo en cuenta la posicion
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
Toast.makeText(
Principal.this,
l.getItemAtPosition(position).toString(),
Toast.LENGTH_LONG)
.show();
}
}
Tras compilar nuevamente, comprobamos como en este caso se nos est mostrando el valor
que tiene el elemento pulsado en la lista
-
Ilustracin 2 - Vista con funcin Toast
ANEXO NOTIFICACIONES EN ANDROID TOAST
En Android existen diferentes formas de mostrar mensajes por pantalla, pero
posiblemente Toast sea la forma ms sencilla que existe.
Un Toast es un mensaje que se muestra en pantalla durante unos segundos y que
desaparece sin necesidad de hacer nada ms y sin interferir en las acciones del usuario.
Aunque se pueden configurar, por defecto aparecen en la parte inferior de la pantalla como
hemos visto en nuestra aplicacin. La clase toast dispone de un mtodo esttico maketext()
al que le debemos de pasar por parmetro el contexto de la actividad, el texto a mostrar, y
la duracin del mensaje, que puede tomar los valores LENGTH_LONG o LENGTH_SHORT
dependiendo del tiempo que queramos mostrarlo. Para mostrarlo, simplemente tenemos
que ejecutar el mtodo show().
Para poder personalizar la ubicacin en pantalla utilizaremos el mtodo setGravity(),
al que podremos indicar en qu zona deseamos que aparezca. La zona deberemos indicarla
-
con alguna de las constantes definidas en la clase Gravity, que podremos combinar a
nuestro gusto.
Si queremos realizar una personalizacin total podemos crearnos un layout especial
para el toast que llamaremos toast_layout.xml y lo colocaremos en la carpeta normal del
resto de los layouts. Para poder asignar este layout a nuestro Toast tendremos que inflar el
layout mediante LayoutInflater y definir propiedades como el setDuration(). En la
documentacin oficial tienes ms detalles sobre cmo realizar nuestro toast a la carta.
ProGRAMACIN DE APPS ANDROID (NATIVO) creacin de listaslista clickableanexo notificaciones en android toast