У меня есть расширенный вид списка, где каждый элемент группы состоит из флажка и текстового представления.
Я хочу щелкнуть по элементу и установить флажок этого набора элементов, по которому щелкнули, и зачеркнутого текста.
Но когда я нажимаю на любой элемент группы, флажок и текстовое представление первого элемента изменяются.
Когда я записываю позицию элемента, на который я нажимаю в журналах, он показывает правильное число, первый элемент выводит 0, второй - 1 и т. Д.
это мой метод onClick
expandableListView!!.setOnGroupClickListener { expandableListView, view, i, l ->
if (expandableListView.isGroupExpanded(i)) {
val checkBox = findViewById<CheckBox>(R.id.checkBoxTaskOnly)
val listTitle = findViewById<TextView>(R.id.listTitle)
Log.i("position", i.toString())
checkBox.isChecked = true
listTitle.paintFlags = Paint.STRIKE_THRU_TEXT_FLAG
}
return@setOnGroupClickListener true
}
это list_group.xml
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/taskOnly"
android:orientation="horizontal">
<CheckBox
android:id="@+id/checkBoxTaskOnly"
android:layout_width="wrap_content"
android:focusable="false"
android:layout_height="wrap_content"
android:paddingLeft="?android:attr/expandableListPreferredItemPaddingLeft"/>
<TextView
android:id="@+id/listTitle"
android:layout_width="match_parent"
android:focusable="false"
android:layout_height="wrap_content"
android:textColor="@android:color/black"/>
</LinearLayout>
Это main_activity.xml
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ExpandableListView
android:id="@+id/expandableListView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:groupIndicator="@null"
android:dividerHeight="0.5dp">
</ExpandableListView>
</LinearLayout>