【发布时间】:2017-08-22 22:40:05
【问题描述】:
您好希望有人能帮帮我,我正在使用一个 android 应用程序,我已经序列化了以下 gson 对象
截图:
jsonobject 有许多子类,例如:
PreferencialaboraEstudio、Preferencialaboralarea 等更多课程,
我将这个 gson 对象从一个活动转移到一个新活动,为了反序列化这个对象,我在新活动中实现了以下代码:
Intent intent = getIntent();
String Postulado = intent.getStringExtra("Postulado");//Postulado from extra is actually a gson object
Candidato candidato = gson.fromJson(Postulado, Candidato.class);
CandidatoPreferenciaLaboralEstado preflaboraledo = gson.fromJson(Postulado, CandidatoPreferenciaLaboralEstado.class);
我在 CandidatoPreferenciaLaboralEstado 有问题,如图所示,gson 对象中有两个这个类型的类,但是我的代码只返回第一个而不是第二个,有没有办法得到来自 gson 的所有此类“CandidatoPreferenciaLaboralEstado”的项目?
非常感谢您在此问题上的时间和帮助。
【问题讨论】:
-
据我了解,您有两个对象恰好位于
Postulado中。我会考虑只使用两个字符串,每个字符串都带有每个对象的 JSON。如果您可以在Postulado中发布 JSON 的结构,也会很有帮助。 -
是的 Postulado 是对象,它有很多属性/属性,其中一些是列表,例如 CandidatoPreferenciaLaboralEstado,Gson 对象在这个属性中有两项,所以我需要提取这两项在字符串或列表中键入 CandidatoPreferenciaLaboralEstado,以便稍后在 Textbox 或 ListView 中添加该信息。
-
我也试过了,但仍然只得到第一项 =/ List
listaestados = new ArrayList (); listaestados.add(gson.fromJson(Postulado, CandidatoPreferenciaLaboralEstado.class)); -
如果可以的话,请给我们
Candidato和CandidatoPreferenciaLaboralEstado的类定义以及intent.getStringExtra("Postulado")中的JSON,这将真正帮助任何人解决这个问题。在问题中包括所有这些。为简洁起见,从类中删除所有方法。
标签: android serialization gson deserialization