Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

442
Vistas
Kotlin setOnClickListener para un ListView

Tengo el siguiente código:

 class BookListActivity : AppCompatActivity() { var array = arrayOf("Item 1", "Item 2", "Item 3", "Item 4", "Item 5", "Item 6", "Item 7", "Item 8", "Item 9", "Item 10", "Item 11") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.book_list) val adapter = ArrayAdapter(this, R.layout.book_list_item, R.id.book_title, array) val listView : ListView = findViewById(R.id.book_list) listView.adapter = adapter } }

Necesito agregar un detector de clics para cada elemento en listView.

He intentado lo siguiente pero no funciona:

 listView.setOnItemClickListener { val intent = Intent(this, BookDetailActivity::class.java) startActivity(intent) }

También necesito saber en qué elemento ListView he hecho clic. ¿Cómo puedo hacer esto?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Tienes que manejar todos los parámetros para AdapterView.OnItemClickListener

Su oyente debería verse así:

 listView.setOnItemClickListener { parent, view, position, id -> val element = adapter.getItemAtPosition(position) // The item that was clicked val intent = Intent(this, BookDetailActivity::class.java) startActivity(intent) }
over 4 years ago · Santiago Trujillo Denunciar

0

Pruebe esta solución para el elemento de vista de lista, haga clic en el oyente.

 listView.setOnItemClickListener = AdapterView.OnItemClickListener {parent,view, position, id -> // Get the selected item text from ListView val selectedItem = parent.getItemAtPosition(position) as String val intent = Intent(this, BookDetailActivity::class.java) startActivity(intent) }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda