如何从改造响应中返回值?

时间:2020-11-12 15:42:04

标签: android kotlin request retrofit retrofit2

我正在尝试创建改造请求并从响应中返回值,但我不知道该怎么做。在onReponse函数中,列表包含正确的值,但是当我尝试返回它时,列表为空。

这是我的功能:

 fun getFinancialDetailsService(mandatorGuid: String): List<FinancialDetails.FinancialDetailsItem> {
    val mandatorItem = MandatorItem(mandatorGuid)
    val guid: MutableMap<String, String> = HashMap()
    guid["guid"] = mandatorItem.guid


    val call: Call<FinancialDetails> = createAPI().getFinancialDetails(mandatorItem.guid)
    call.enqueue(object : Callback<FinancialDetails> {
        override fun onFailure(call: Call<FinancialDetails>, t: Throwable) {
            
        }

        override fun onResponse(call: Call<FinancialDetails>, response: Response<FinancialDetails>) 
            financialDetailsData = response.body()!!.data
            Log.i("TEST", "Financial Response: " + financialDetailsData.toString())
        }

    })
    Log.i("TEST", "Financial RETURN " + call.execute().body()!!.data.toString())
    return financialDetailsData
}

如果您有任何解决方案,请告诉我!谢谢!

1 个答案:

答案 0 :(得分:0)

可能是因为在调用onResponse之前返回FinancialDetailsData