Вот мой метод контроллера остатка
fun getPosts (): ArrayList {
val result = ArrayList<Post>()
val retrofit = RetrofitClient.retrofitInstance
val service = retrofit?.create(ApiService::class.java)
val call = service?.getPosts()
call?.enqueue(object : Callback<List<Post>> {
override fun onFailure(call: Call<List<Post>>, t: Throwable) {
}
override fun onResponse(call: Call<List<Post>>, response: Response<List<Post>>) {
println(response.body()?.size)
if(response.isSuccessful && response.body()!= null) {
val posts = response.body()
listener.onRestDataReceived(posts!!)
result.addAll(posts!!)
}
}
})
return result
}
Когда я пытаюсь получить доступ к данным из возвращаемого типа, я получаю пустой список массивов, но если я использовать метод обратного вызова интерфейса и передать данные через интерфейс и реализовать интерфейс в моей деятельности. Я могу получить доступ к данным