Tema: [ CONSULTA ] Varias listas en adapter
Ver Mensaje Individual
  #1  
Viejo 11/08/19, 12:26:15
Array

[xs_avatar]
Merche300 Merche300 no está en línea
Betatester oficial
 
Fecha de registro: dic 2008
Localización: Valencia
Mensajes: 625
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:

[PHP]java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
at java.util.ArrayList.get(ArrayList.java:437)
at com.myapplication.Jornadas.DetPartidos.DetLocalAda pter$ViewHolder.bindItems(DetLocalAdapter.kt:39)
at com.myapplication.Jornadas.DetPartidos.DetLocalAda pter.onBindViewHolder(DetLocalAdapter.kt:29)
at com.myapplication.Jornadas.DetPartidos.DetLocalAda pter.onBindViewHolder(DetLocalAdapter.kt:12)[/PHP]


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