Я делаю собственный ArrayAdapter, и мне нужно получить список элементов, я просто создаю метод с именем getItems, который возвращает список, переданный в конструкторе адаптера, проблема в том, что студия Android выдает мне это сообщение об ошибке:
Я сделал это на Java, но в Kotlin можно добиться того же поведения.Это настоящий код:
class FichaDeContactoVaciaAdapter(context: Context,var items :
List<FichaContacto>) : ArrayAdapter<FichaContacto>(context, 0, items){
override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View {
val inflater = context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater
val rowView = inflater.inflate(R.layout.list_item_ficha_contacto, parent,false)
val addCardButton = rowView.findViewById<Button>(R.id.anadirFichaButton)
addCardButton.setOnClickListener{
add(FichaContacto())
}
val currentFichaContacto = getItem(position)
// rowView.textInputLayoutficha.setText("Hola mundo desde el adapter")
val removeCardText = rowView.findViewById<TextView>(R.id.removerFicha)
if (count == 1){
removeCardText.visibility = View.GONE
}
removeCardText.setOnClickListener{
Toast.makeText(rowView.context,"Estás haciendo click en el label " + position, Toast.LENGTH_SHORT).show()
if(count > 1){
remove(getItem(position))
}
}
return rowView
}
fun getItems(): List<FichaContacto> {
return items
}
}
Итак, как я могу получить список элементов ArrayAdapter?