Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Android / TextView Autocompletado

TextView Autocompletado

Por jc mouse jueves, mayo 25, 2017

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»

textview

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:

android tutorial

Enjoy!!!

Tags

Artículos similares

Reproducción de sonidos con LibGDX

LibGDX nos permite hacer uso de archivos de sonido muy fácilmente, cuenta con dos tipos de manejo de archivos, estos son[...]

Introducción a los Gráficos en Pygame

Antes de programar un videojuego, es necesario saber: Cómo representar figuras en la pantalla Cómo se manejan las coorde[...]

MVC Java y Base de Datos Tutorial

En post pasados [Ejemplo práctico de MVC java Swing con Netbeans, 3 en raya java con MVC y Netbeans , MVC: Modelo, Vista[...]

Efecto Taringa! en vivo

En la pagina de Taringa, existe una sección donde se puede ver lo que pasa en ese foro al momento, «Taringa! en vivo» se[...]

Creación de mapas con shapes – Parte 3

En nuestro mapa interactivo, se hará uso de un mapa departamental dividido en provincias, todo a través  de shapes, si b[...]

Como paginar registros en Java/Access

En este post veremos una forma de realizar la paginación en una base de datos Access utilizando el lenguaje de programac[...]