Un TextView autocompletado nos facilita el ingreso de información en aplicaciones móviles ya que te muestra posibles opciones para completar lo que escribes y así ahorrar tiempo.
En este post aprenderemos a utilizarlo desde el IDE de Android Studio.
Paso 1. El Proyecto
Partiremos de un proyecto base que llamaremos «TextView Autocompletado»
Paso 2. AutoCompleteTextView
Abrimos el archivo activity_main.xml y pegamos el siguiente código:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context="org.example.textviewautocompletado.MainActivity"> <AutoCompleteTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Nombre completo" android:id="@+id/autoCompleteTextView1" /> <AutoCompleteTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Profesión" android:id="@+id/autoCompleteTextView2" /> </LinearLayout>
Lo que hacemos es agregar 2 componentes AutoCompleteTextView a la interfaz, utilizaremos dos, para mostrar como el contenido del autocompletado se puede cargar ya sea desde código o desde un archivo de recursos XML.
Paso 3. Array de datos
Como dijimos en el paso 2, se puede cargar el contenido del textview autocompletado usando recursos de un archivo XML, para ello debemos declarar un array dentro el archivo strings.xml ubicado en la carpeta «values«. Abrelo y agrega el siguiente contenido:
<string-array name="profesion_array"> <item>Ingenieria de Sistemas</item> <item>Ingenieria de Alimentos</item> <item>Ingenieria Civil</item> <item>Ingenieria Agronomica</item> <item>Ingenieria Biomedica</item> <item>Ingenieria del Lado Oscuro</item> </string-array>
Paso 4. MainActivity
Abre el archivo MainActivity y reemplaza por:
package org.example.textviewautocompletado; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; public class MainActivity extends AppCompatActivity { private AutoCompleteTextView autoCompleteTextView1; private AutoCompleteTextView autoCompleteTextView2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //se declaran los AutoCompleteTextView autoCompleteTextView1 = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1); autoCompleteTextView2 = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView2); //en un array declaramos los valores del AutoCompleteTextView 1 String[] nombres = {"Alto PDo Stoy", "Alejandro Gado", "Alen Gualarga", "Alex Cremento", "Alex Plosivo", "Alma Marcela Goza", "Alma María Rico", "Amilcar Cajada", "Ana Busado de Hesa", "Ana Konda", "Ana Lisa Meltrozo", "Ana Tomía", "Andrés Tatua", "Andrés Tresado", "Aquíles Meo de Latorre", "Ariel C. Pillado", "Armando Esteban Quito"}; //en otro array cargamos los datos del array del archivo strings.xml para el AutoCompleteTextView 2 String[] profesion = getResources().getStringArray(R.array.profesion_array); //cargamos los array en los AutoCompleteTextView //AutoCompleteTextView 1 NOMBRES ArrayAdapter<String> adapter1 = new ArrayAdapter<>(this, R.layout.support_simple_spinner_dropdown_item,nombres); autoCompleteTextView1.setAdapter(adapter1); //AutoCompleteTextView 2 PROFESION ArrayAdapter<String> adapter2 = new ArrayAdapter<>(this, R.layout.support_simple_spinner_dropdown_item,profesion); autoCompleteTextView2.setAdapter(adapter2); }//end: onCreate }
Declaramos y cargamos los arrays de datos desde código y desde el archivo de recursos XML, a continuación utilizando un ArrayAdapter, los cargamos en los Textview correspondientes.
Ejecuta y prueba:
Enjoy!!!
Los gráficos de líneas muestran una serie como un conjunto de puntos conectados mediante una línea. Los valores se repre[...]
Cuando se inicia el aprendizaje de un lenguaje de programación, nunca debe faltar el clásico «Hola Mundo» 🙂 en Android n[...]
En este post vemos un ejemplo de como convertir un archivo de imagen JPG en un archivo PDF utilizando para ellos la libr[...]
TextToSpeech o TTS, es el sintetizador de voz para android, en los celulares inteligentes viene un motor TTS por defecto[...]
En este post veremos una forma de realizar la paginación en una base de datos Access utilizando el lenguaje de programac[...]
Cuando se hace uso de programas a veces no importa que este cree más de una instancia al mismo tiempo, por ejemplo podem[...]