Blog para desarrollo de aplicaciones en Android, aprende paso a paso como crear aplicaciones.

Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación para mostrarle publicidad personalizada y realizar análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. OK Más información | Y más

Como crear un ListView en Android utilizando Kotlin

Android ListView Kotlin


Hola amigos en esta ocasión vamos a crear un ListView en Android utilizando el lenguaje de programación Kotlin.
Como crear un ListView en Android utilizando Kotlin

Como crear un proyecto en Android utilizando Kotlin (Aquí)

Vamos a crear nuestro proyecto con soporte a Kotlin para desarrollar este ejemplo de ListView.
Crear proyecto Android utilizando Kotlin

Crear diseño ListView en Android


Crearemos el diseño de nuestra aplicación y utilizaremos el control ListView lo añadiremos al diseño de nuestro actividad principal. Y nos quedaría de la siguiente forma.

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <ListView android:id="@+id/list"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>

    </RelativeLayout>

</android.support.constraint.ConstraintLayout>

Diseño de ListView en Android
Ahora añadiremos un archivo para que sea el contenido que se mostrara en nuestro ListView en forma de lista. Le pondremos list_row.xml.

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <RelativeLayout  android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:padding="@dimen/List_row_padding">
        <TextView android:id="@+id/label"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>
    </RelativeLayout>
</android.support.constraint.ConstraintLayout>
Y listo.
list_row para nuestro ListView en Kotlin

Código ListView en Android utilizando Kotlin


Continuamos y vamos a seguir con el código para nuestra aplicación y el uso de nuestro control ListView utilizando Kotlin.

import android.content.Context
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.BaseAdapter
import android.widget.ListView
import android.widget.TextView

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedState: Bundle?) {
        super.onCreate(savedState)
        setContentView(R.layout.activity_main)

        val list = findViewById(R.id.listView) as ListView
        list.adapter = ListExampleAdapter(this)
    }

    private class ListExampleAdapter(context: Context) : BaseAdapter() {
        internal var listAnime = arrayOf("Death Note", "Pokemon", "Black Jack", "Dragon Ball", "Naruto", "Neo Genesis", "Baka to Test")
        private val mInflator: LayoutInflater

        init {
            this.mInflator = LayoutInflater.from(context)
        }

        override fun getCount(): Int {
            return listAnime.size
        }

        override fun getItem(position: Int): Any {
            return listAnime[position]
        }

        override fun getItemId(position: Int): Long {
            return position.toLong()
        }

        override fun getView(position: Int, convertView: View?, parent: ViewGroup): View? {
            val view: View?
            val vh: ListRowHolder
            if (convertView == null) {
                view = this.mInflator.inflate(R.layout.list_row, parent, false)
                vh = ListRowHolder(view)
                view.tag = vh
            } else {
                view = convertView
                vh = view.tag as ListRowHolder
            }

            vh.label.text = listAnime[position]
            return view
        }
    }

    private class ListRowHolder(row: View?) {
        public val label: TextView

        init {
            this.label = row?.findViewById(R.id.label) as TextView
        }
    }
}

con esto tendremos listo nuestro ejemplo.

Como crear un emulador AVD en Android (Aquí)


Vamos a crear un emulador para ver nuestra aplicación en ejecución.
Emulador AVD aplicación ListView utilizando Kotlin
Y listo con esto terminamos nuestro ejemplo. Déjanos saber tu opinión sobre este tutorial. Gracias.

Curso Kotlin Español

No hay comentarios:

Publicar un comentario

x

Registrate!

Curso Android Español

Curso Kotlin Español

eBook Free Android Studio

Noticias y Eventos

¡Directamente a tu INBOX!

Le enviaremos nuestros recursos gratis. Para obtener nuestro contenido nuevo, únase a nuestra comunidad. No te molestaremos enviando información inútil. ¡No te pierdas ninguna actualización, mantente conectado! Recuerda verificar tu correo electronico.

Ingrese su dirección de correo electrónico:

Entregado por FeedBurner