【发布时间】:2021-11-13 11:54:58
【问题描述】:
我正在解析一个 json,然后我需要填充图表上的值,我得到的响应如下
{
"message": "Successful.",
"data": {
"stats": {
"Total Transactions": 1,
"Today Transactions": 0,
"Today Pending Transactions": 0,
"Payment links created": 2,
"Api payments": 0
},
"otherData": {
"countiesData": {
"2021": {
"US": 1
}
},
"transactionTypesData": {
"2021": {
"PAYMENT_LINK": 1
}
},
"graphData": {
"2021": {
"SUCCESS": {
"1": 0,
"2": 0,
"3": 0,
"4": 0,
"5": 0,
"6": 0,
"7": 0,
"8": 0,
"9": 1,
"10": 0,
"11": 0,
"12": 0
}
}
},
"currentMoth": 3200,
"preMonthAvr": 3200
}
},
"code": 200,
"accessToken": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9."
}
我已经在 otherData 中为 graphData 创建了模型数据。
data class OtherData(
var countiesData : Any,
var transactionTypesData: Any,
var graphData : HashMap<String,HashMap<String,HashMap<String,String>>>
)
我通过这些行在 graphData 中获得了年份,但我无法在 year 对象中获得其他值。
it.data.data.otherData.graphData.let { graphYear->
if (graphYear.isNotEmpty()){
tvYearForRevenueReport.text = graphYear.keys.elementAt(0)
tvFirstGraphLabel.text = graphYear.getValue(graphYear.keys.elementAt(0)) // giving error at this line
}
}
所以我的问题是我在做什么是最好的方法吗?如果不是这样,如果有任何解决方法将很高兴听到。
【问题讨论】:
-
Isn't graphData: HashMap
>> 另外,你收到的错误是什么? -
没关系,我可以将重铸字符串转换为 Int
-
你的解析行可以吗? Gson/JSONObject 调用?
标签: android json parsing hashmap