Моя цель с этим кодом состоит в том, чтобы представить список («listView»), который в основном заполняется значениями, предоставленными разработчиком, а затем перемещается во вторую часть, где удаляются элементы, которые нажимает пользователь.
Первая часть идет по желанию, список выглядит так, как определено. Но во второй части программа не запускается, закрывая приложение.
Файл MainActivity.kt
class MainActivity : AppCompatActivity() {
private val defns = ArrayList<String>()
private lateinit var myAdapter : ArrayAdapter<String>
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
putElementsList()
listView_elements.setOnItemClickListener{ _, _, index, _ ->
defns.removeAt(index)
myAdapter.notifyDataSetChanged()
}
}
private fun putElementsList() {
defns.add("piggy")
defns.add("dumas")
defns.add("kika")
defns.add("songahn")
defns.add("festeira")
defns.shuffle()
val myAdapter = ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, defns)
listView_elements.adapter = myAdapter
}
}
activity.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="word"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
android:id="@+id/TextView_word" android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@+id/textView_title" app:layout_constraintVertical_bias="0.02"
android:textSize="18sp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Vocab builder game"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" android:id="@+id/textView_title"
app:layout_constraintHorizontal_bias="0.526" app:layout_constraintVertical_bias="0.043"
android:textStyle="bold" android:textSize="30sp" android:textColor="@android:color/background_dark"/>
<ListView
android:layout_width="395dp"
android:layout_height="600dp"
android:id="@+id/listView_elements"
app:layout_constraintTop_toBottomOf="@+id/TextView_word"
android:layout_marginTop="12dp"
app:layout_constraintStart_toStartOf="parent"
android:layout_marginStart="8dp"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="8dp"
app:layout_constraintHorizontal_bias="0.0"/>
</androidx.constraintlayout.widget.ConstraintLayout>