Avisos

Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 11/08/19, 12:26:15
Array

[xs_avatar]
Merche300 Hombre Merche300 no está en línea
Betatester oficial
 
Fecha de registro: dic 2008
Localización: Valencia
Mensajes: 620
Modelo de smartphone: NEXUS 5 - ONEPLUS 3
Tu operador: Pepephone
Varias listas en adapter

Bueno tengo un Json con varios arrays que quiero mostrar en un recyclerView, he pensado en acceder al modelParent desde el adapter, pero no hay manera.

Los Models

Código:
class DetallesModelParent{
    
    var golesLocal: ArrayList<DetLocalModel>? = null
    var golesVisitante: ArrayList<DetVisiModel>? = null
}
Código:
class DetLocalModel (

    val idJugador: String,
    val nombre: String,
    val minuto: String
)
Código:
class DetVisiModel(
    val idJugador: String,
    val nombre: String,
    val minuto: String
)
En el activity paso todo al adaptador para desde alli mostrar todo:

Código:
Rv_DetLocal.adapter = DetLocalAdapter(response.body()!!)
Y el adaptador:

Código:
class DetLocalAdapter(val det_partido: DetallesModelParent): RecyclerView.Adapter<DetLocalAdapter.ViewHolder>() {

    var listaLocal = ArrayList(det_partido.golesLocal)
    var listaVisi = ArrayList(det_partido.golesVisitante)

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
        val layoutInflate = LayoutInflater.from(parent.context)
            .inflate(R.layout.partido_goles_row, parent, false)

        return ViewHolder(layoutInflate)
    }

    override fun onBindViewHolder(holder: ViewHolder, position: Int) {
        val itemDetPart = det_partido[position]
        holder.bindItems(itemDetPart)
    }

    override fun getItemCount(): Int {
        return listaLocal.size + listaVisi.size
    }

    class ViewHolder(itemView: View): RecyclerView.ViewHolder(itemView){
        fun bindItems(plantillaModel2: DetallesModelParent){

            itemView.tv_JugadorLocal.text = plantillaModel2.golesLocal!!.get(adapterPosition).nombre
            itemView.tv_JugadorVisi.text = plantillaModel2.golesVisitante!!.get(adapterPosition).nombre

        }
    }
}
El Logcat:

Código PHP:
java.lang.IndexOutOfBoundsExceptionIndex3Size3
        at java
.util.ArrayList.get(ArrayList.java:437)
        
at com.myapplication.Jornadas.DetPartidos.DetLocalAdapter$ViewHolder.bindItems(DetLocalAdapter.kt:39)
        
at com.myapplication.Jornadas.DetPartidos.DetLocalAdapter.onBindViewHolder(DetLocalAdapter.kt:29)
        
at com.myapplication.Jornadas.DetPartidos.DetLocalAdapter.onBindViewHolder(DetLocalAdapter.kt:12

Hay alguna manera de acceder al las listas por separado?

Última edición por Merche300 Día 11/08/19 a las 13:11:33.
Responder Con Cita


  #2  
Viejo 12/08/19, 08:23:37
Array

[xs_avatar]
Merche300 Hombre Merche300 no está en línea
Betatester oficial
 
Fecha de registro: dic 2008
Localización: Valencia
Mensajes: 620
Modelo de smartphone: NEXUS 5 - ONEPLUS 3
Tu operador: Pepephone
Hay alguna manera, aunque no sea esa, de hacerlo?.
Necesito varias listas en el mismo recycleview.
Gracias
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android

Herramientas


Hora actual: 19:51:12 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2019 DragonByte Technologies Ltd.