SQLite помогите исправить
взял образец отсюда
MainCtivity
fun viewRecord(view: View){
//creating the instance of DatabaseHandler class
val databaseHandler: DatabaseHandler= DatabaseHandler(this)
//calling the viewEmployee method of DatabaseHandler class to read the records
val emp: List<String> = databaseHandler.viewEmployee()
val empArrayId = Array(emp.size){0}
val empArrayName = Array(emp.size){"null"}
val empArrayEmail = Array(emp.size){"null"}
println(arrayOf(emp[0]))
var index = 0
for(e in emp){
empArrayId[index] = e.userId.toString() // не может найти userId
empArrayName[index] = e.userName // не может найти userName
empArrayEmail[index] = e.userEmail // не может найти userEmail
index++
}
//creating custom ArrayAdapter
val myListAdapter = MyListAdapter(this,empArrayId,empArrayName,empArrayEmail)
binding.listView.adapter = myListAdapter
DatabaseHandler
fun viewEmployee(): List<String>{
val empList:ArrayList<String> = ArrayList<String>()
val selectQuery = "SELECT * FROM $TABLE_CONTACTS"
val db = this.readableDatabase
var cursor: Cursor? = null
try{
cursor = db.rawQuery(selectQuery, null)
}catch(e: SQLiteException) {
db.execSQL(selectQuery)
return ArrayList()
}
var userId: Int
var userName: String
var userEmail: String
if(cursor.moveToFirst()) {
do {
userId = cursor.getInt(cursor.getColumnIndexOrThrow("id"))
userName = cursor.getString(cursor.getColumnIndexOrThrow("name"))
userEmail = cursor.getString(cursor.getColumnIndexOrThrow("email"))
val emp= EmpModelClass(userId = userId, userName = userName, userEmail = userEmail)
empList.add(emp.toString())
} while(cursor.moveToNext())
}
return empList
}
}
EmpModelClass
class EmpModelClass(var userId: Int, val userName:String , val userEmail: String)
Что мне поменять чтобы отобразить БД?
Источник: Stack Overflow на русском