-je utiliser un adaptateur personnalisé pour Liste sur mon application Android. Je ne sais pas comment définir l'écouteur pour le clic de l'élément. J'utilise Kotlin pour mon application.Comment setOnItemClickListener pour la liste avec adaptateur personnalisé par Kotlin
Ceci est ma mise en page de l'adaptateur.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<CheckBox
android:id="@+id/cbx"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="" />
<TextView
android:id="@+id/txtNameNote"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView"
android:layout_toRightOf="@+id/cbx"
/>
<TextView
android:id="@+id/txtPercent"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="TextView"
android:layout_toRightOf="@+id/cbx"
android:layout_below="@+id/txtNameNote"
/>
</RelativeLayout>
</LinearLayout>
class CustomAdapter(internal var context: Context, resource: Int, internal var listNote: ArrayList<Note>) : ArrayAdapter<Note>(context, resource, listNote) {
override fun getView(position: Int, convertView: View?, parent: ViewGroup): View {
var convertView = convertView
// TODO Auto-generated method stub
val inflater = (context as Activity).layoutInflater
convertView = inflater.inflate(R.layout.rowlistitem, parent, false)
val name = convertView!!.findViewById<View>(R.id.txtNameNote) as TextView
val percent = convertView.findViewById<View>(R.id.txtPercent) as TextView
val cb = convertView.findViewById<View>(R.id.cbx) as CheckBox
name.text = listNote[position].name
percent.text = "Percent: " + listNote[position].percent + "%"
if (listNote[position].status == NoteStatus.Active.value)
cb.isChecked = false
else{
name.paintFlags = (name.paintFlags or Paint.STRIKE_THRU_TEXT_FLAG)
cb.isChecked = true
}
}
}
return convertView
}
}
Quelqu'un peut me aider?
Peut-on voir le code de la carte? – pRaNaY
J'ai mis à jour mon code d'adaptateur, s'il vous plaît consulter. Merci ! –