ho esteso ArrayAdapter per filatore:parametro specificato come non nullo è nullo in ArrayAdaper
class OrderAdapter(context: Context, resource: Int, objects: List<Order>) : ArrayAdapter<Order>(context, resource, objects) {
override fun getView(position: Int, convertView: View?, parent: ViewGroup): View? {
val view = super.getView(position, convertView, parent)
view?.let { view.find<TextView>(android.R.id.text1).text = getItem(position).name }
return view
}
override fun getDropDownView(position: Int, convertView: View?, parent: ViewGroup): View? {
val view = super.getDropDownView(position, convertView, parent)
view?.let {view.find<TextView>(android.R.id.text1).text = getItem(position).name }
return view
}
}
sto diventando un'eccezione:
java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter convertView
at com.github.blabla.endlesss.ui.adapter.OrderAdapter.getView(OrderAdapter.kt:0)
Delle idee come risolvere il problema?
L'eccezione è abbastanza chiara. Stai passando null per il parametro convertView. – Arno
Questo metodo è invocato dal framework Android e il parametro è in realtà definito come nullable, quindi è necessario consentire i valori null. –
@Dawid sei sicuro che il tuo codice sia lo stesso che hai postato qui? In particolare, il parametro 'convertView' è realmente dichiarato come nullable? –