Привет, я новичок в нативной android разработке, я пытаюсь сделать простое приложение CRUD, я использую API, который я сделал с весенней загрузкой. Пока все функции работают (1-е фото) Я следую различным урокам вокруг net, чтобы сделать это.
Я следил за этим видео Json в Gson для анализа данных из моего API (Json) в классе данных.
И это мой код для функции получить все, когда я нажимаю кнопку «Получить все». Как вы можете видеть в (Снимок экрана приложения) ListView показывает данные из стран Валь. Что мне нужно сделать, это вместо того, чтобы показывать значения из других стран. Я хочу представить значения из моего API.
val страны = arrayOf ("Индия", "США", "Китай", "SRILANKA", "Ирландия", "Германия", "Израиль", "Франция", "Непал", "Бразилия," Австралия», "Англия", "Япония", "Пакистан", "Франция")
//GET ALL
fun getall(view: View) {
myAPIurl.httpGet().responseString { request, response, result ->
when (result) {
is Result.Success -> {
val fetcheddata = result.get().toString()
textView1.text = fetcheddata
val mynotes = Gson().fromJson(fetcheddata, Array<MyNotes>::class.java).toList()
//This code shows the titles of each record in the logs
mynotes.forEach {
d("crizon","Post Title: ${it.title}")
d("crizon","Post Body: ${it.body}")
d("crizon", "Post Status: ${it.status}")
}
//I saw thi code in the internet I want to make my app to work like this but present the data from my API
val search = findViewById<SearchView>(R.id.searchView) as SearchView
val list = findViewById<ListView>(R.id.listView) as ListView
val countries = arrayOf("India","USA","China","Sri Lanka","Ireland","Germany","Israel","France","Nepal","Brazil","Australia","England","Japan","Pakistan","France")
val countryAdap : ArrayAdapter<String> = ArrayAdapter(this,android.R.layout.simple_list_item_1,countries)
list.adapter = countryAdap
search.setOnQueryTextListener(object : SearchView.OnQueryTextListener{
override fun onQueryTextSubmit(query: String?): Boolean {
return false
}
override fun onQueryTextChange(newText: String?): Boolean {
countryAdap.filter.filter(newText)
return false
}
})
}
is Result.Failure -> {
textView1.text = "Cannot Retrieve Data!"
}
}
}
}
Извините, если мой вопрос сбивает с толку. Спасибо за вашу помощь.