这是我的json:
{
"events": [
{
"strHomeTeam": "Liverpool",
"strAwayTeam": "Swansea",
}
]
}
这是我的模特:
data class Detail(@SerializedName("events") val events : EventDetail)
data class EventDetail(val strHomeTeam : String, val strAwayTeam: String)
这是我将json数据传递给模型的代码:
val body = response?.body()?.string()
val gson = GsonBuilder().create()
val eventData = gson.fromJson(body, Detail::class.java)
但我得到以下错误:
java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 12 path $.events
有人可以帮帮我吗?
更改
data class Detail( @SerializedName("events") val events : EventDetail)|
至
data class Detail( @SerializedName("events") val events : List<EventDetail>)
你应该像下面这样创建你的pojo类
data class EventsModel(
@field:SerializedName("events")
val events: List<EventsItem?>? = null
)
其中EventsItem类应该是
data class EventsItem(
@field:SerializedName("strHomeTeam")
val strHomeTeam: String? = null,
@field:SerializedName("strAwayTeam")
val strAwayTeam: String? = null
)