首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在非活动类中使用Volley和Klaxon。

在非活动类中使用Volley和Klaxon。
EN

Stack Overflow用户
提问于 2019-02-05 20:34:25
回答 1查看 216关注 0票数 0

我正在尝试创建一个类来表示数据库中的表。

代码语言:javascript
复制
data class MSettings(
var name: String?,
var value: String?,
var Description: String?)

我需要从api中获取数据。我试着用截击,但截击需要上下文。我无法访问非活动类的上下文。因此,我添加了var上下文: Context。好了,起作用了。我的api返回JSON:"{"name":"enable","value":"true","desc":"description"}“现在我需要解析响应JSON。我在试着利用Klaxon

代码语言:javascript
复制
Klaxon().parse<MSettings>(response)

但我错了:

代码语言:javascript
复制
com.beust.klaxon.KlaxonException: Unable to instantiate MSettings with parameters [name: enable, value: true]

因为我有MSettings(上下文、名称、值、desc)。我必须在从API获取数据和解析JSON之间进行选择?

也许你还有别的主意怎么做呢?

片段从数据类中获取数据。Data从API获取数据并返回解析的JSON。我不知道。

对不起我的英语太差了。谢谢你的建议

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-13 21:39:28

您所看到的错误的原因是您已经命名了描述字段描述,而不是desc,它是JSON响应中使用的名称:

代码语言:javascript
复制
{"name":"enable","value":"true","desc":"description"}" 

因此,只需将字段描述的名称更改为desc,或在Description字段前面添加@Json(name = "desc"),如下所示:

代码语言:javascript
复制
data class MSettings(
var name: String?,
var value: String?,
@JSON(name = "desc")
var Description: String?)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54542610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档