Tutorial de vista de lista simple de Android
Última actualización: 22 de septiembre de 2012
En este tutorial, aprenderá cómo crear un ListView simple en su aplicación de Android. ListView es un grupo de vista que muestra una lista de elementos desplazables verticales. Crearemos un ListView que permita a los usuarios desplazarse por la lista y, al hacer clic en el elemento ListView, se mostrarán los resultados de una nueva actividad mediante un método de intención. Vamos a empezar…
Cree un nuevo proyecto en Eclipse, seleccione Archivo > Nuevo > Proyecto de aplicación de Android. Complete los detalles y nombre su proyecto ListViewTutorial.
Nombre de la aplicación: ListViewTutorial
Nombre del proyecto: ListViewTutorial
Nombre del paquete: com.androidbegin.l istviewtutorial
Abra su MainActivity .java y pegue el siguiente código.
Actividad principal .java
paquete com.androidbegin.listviewtutorial; importar android.os.Bundle; importar android.app.Actividad; importar android.content.Intent; importar android.view.Menú; importar android.widget.AdapterView; importar android.widget.AdapterView.OnItemClickListener; importar android.widget.ArrayAdapter; importar android.widget.ListView; importar android.view.View; clase pública MainActivity extiende Actividad { // Declarar variables vista de lista vista de lista; @Anular public void onCreate (Paquete guardadoInstanceState) { super.onCreate(estadoDeInstanciaGuardado); // Obtener la vista de listview_main.xml setContentView(R.layout.listview_main); // Almacenar recursos de cadenas en un Array Cadena[] Teléfonos Samsung = nueva Cadena[] { "Galaxy S", "Galaxy S2", "Galaxy Note", "Galaxy Beam", "Galaxy Ace Plus", "Galaxy S3", "Galaxy S Advance", "Galaxy Wave 3", "Galaxy Wave Y", "Galaxy Nexus", "Galaxy W", "Galaxy Y", "Galaxy Mini", "Galaxy Gio", "Galaxy Wave", "Galaxy Wave 2" }; // Localiza ListView en listview_main.xml listView = (ListView) findViewById(R.id.listview); // Vincular cadenas de matriz en un adaptador ArrayAdapter<String> adaptador = new ArrayAdapter<String>(esto, android.R.layout.simple_list_item_1, android.R.id.text1, Teléfonos Samsung); listView.setAdapter(adaptador); // Capturar clic en el elemento ListView listView.setOnItemClickListener(nuevo OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View view, posición int, identificación larga) { // Captura la posición del clic y configúralo en una cadena String teléfonos = (String) listView.getItemAtPosition(posición); // Inicie SingleItemView.java usando la intención Intent i = new Intent(MainActivity.this, SingleItemView.class); // Enviar cadena capturada a SingleItemView.java i.putExtra("teléfonos", teléfonos); // Iniciar SingleItemView.java iniciarActividad(i); } }); } @Anular public boolean onCreateOptionsMenu(Menú menú) { getMenuInflater().inflate(R.menu.actividad_lista_vista, menú); devolver verdadero; } }
Las cadenas se almacenan en una matriz de cadenas y se configuran en un ListView mediante un adaptador. Usamos un onitemclicklistener para capturar la posición de clic del elemento ListView y pasar la cadena seleccionada a una nueva actividad llamada SingleItemView.java .
A continuación, cree un archivo XML para su diseño gráfico MainActivity . Vaya a res > diseño > Haga clic con el botón derecho en el diseño > Nuevo > Archivo XML de Android
Nombre su nuevo archivo XML listview_main.xml y pegue el siguiente código.
vista_de_lista_principal .xml
<?versión xml="1.0" codificación="utf-8"?> <RelativeLayout xmlns_android="http://schemas.android.com/apk/res/android" android_layout_width="fill_parent" android_layout_height="fill_parent" > <ListView android_id="@+id/vista de lista" android_layout_width="fill_parent" android_layout_height="fill_parent" /> </RelativeLayout>
Producción:
A continuación, cree una nueva actividad en una nueva clase llamada SingleItemView .java . Vaya a Archivo > Nuevo > Clase y asígnele el nombre SingleItemView .java. Seleccione su paquete llamado com.androidbegin. listviewtutorial y haga clic en Finalizar .
Abra su SingleItemView .java y pegue el siguiente código.
Vista de elemento único .java
paquete com.androidbegin.listviewtutorial; importar android.app.Actividad; importar android.content.Intent; importar android.os.Bundle; importar android.widget.TextView; La clase pública SingleItemView extiende la actividad { // Declarar variable Teléfonos de cuerda; @Anular public void onCreate (Paquete guardadoInstanceState) { super.onCreate(estadoDeInstanciaGuardado); // Obtenga la vista de single_item_view.xml setContentView(R.layout.single_item_view); // Localice TextView en single_item_view.xml TextView txtPhones = (TextView) findViewById(R.id.text); // Obtener cadena de la intención pasada desde MainActivity.java Intención i = getIntent(); teléfonos = i.getStringExtra("teléfonos"); // Establecer la cadena en TextView txtTeléfonos.setText(teléfonos); } }
Se usa una intención para recuperar una cadena de la actividad anterior y establecer la cadena en un TextView.
A continuación, cree un archivo XML para su diseño gráfico SingleItemView . Vaya a res > diseño > Haga clic con el botón derecho en el diseño > Nuevo > Archivo XML de Android
Nombre su nuevo archivo XML singleitemview .xml y pegue el siguiente código.
vista de elemento único .xml
<RelativeLayout xmlns_android="http://schemas.android.com/apk/res/android" xmlns_herramientas="http://esquemas.android.com/herramientas" android_layout_width="match_parent" android_layout_height="match_parent" > <Vista de texto android_id="@+id/texto" android_layout_width="wrap_content" android_layout_height="wrap_content" android_layout_centerInParent="verdadero" android_textSize="30dip" /> </RelativeLayout>
A continuación, cambie el nombre de la aplicación. Abra su strings.xml en su carpeta res > valores y pegue el siguiente código.
cadenas.xml
<recursos> <string name="app_name">Tutorial de vista de lista</string> <string name="hello_world">¡Hola mundo!</string> <string name="menu_settings">Configuración</string> </recursos>
En su AndroidManifest.xml , debemos declarar una actividad para SingleItemView.java . Abra su AndroidManifest.xml y pegue el siguiente código.
Manifiesto de Android. xml
<manifiesto xmlns_android="http://schemas.android.com/apk/res/android" paquete="com.androidbegin.listviewtutorial" android_versionCode="1" android_versionName="1.0" > <usos-sdk android_minSdkVersion="8" android_targetSdkVersion="15" /> <aplicación android_icono="@dibujable/ic_launcher" android_etiqueta="@cadena/nombre_aplicación" android_tema="@estilo/AppTheme" > <actividad android_name=".MainActivity" > <intent-filter> <acción android_name="android.intent.action.MAIN" /> <categoría android_name="android.intent.category.LAUNCHER" /> </intent-filter> </actividad> <actividad android_name=".SingleItemView" > </actividad> </aplicación> </manifiesto>
Producción:
Código fuente
[purchase_link id=”7814″ text=”Comprar para descargar el código fuente” style=”button” color=”green”]