我正在解析数据从mysql到我的IOS swift应用程序使用Alamofire,数据是整数,我把它们取到文本字段,然后我会对它们做一些计算,我成功地加载了数据,但问题是它们不能分配到文本字段!
func getIcomeData() {
start()
let url = URLs.income
AF.request(url).validate().responseJSON { response in
switch response.result {
case .success:
print("Validation Successful)")
if let json = response.data {
do{
let jsonData = try JSON(data: json)
let dataarray = jsonData.arrayValue
print("DATA PARSED: \(jsonData)")
for itemDict in dataarray{
let int1 = itemDict["Base-Pay-Monthly"].intValue
**self.BPMTXT.text = itemDict["Base-Pay-Monthly"].intValue**
let int2 = itemDict["Overtime"].intValue
**self.OTTXT.text = itemDict["Overtime"].intValue**
let int6 = itemDict["Others"].intValue
**self.OthersTXT.text = itemDict["Others"].intValue**
let totalIncome = [int1, int2, int3, int4, int5, int6]
let sum = totalIncome.reduce(0, +)
//self.NetPayLabel.text = String(sum)
self.NetPay = Double(sum)
}
self.stop()
}
catch {
print("JSON Error", error)
}
}
case .failure(let error):
print(error)
}
}
}
我得到这个错误不能将“int”类型的值分配给加粗线上的“string”类型
错误信息非常清楚。
self.bpmtxt.text
是字符串。itemdict[“base-pay-monthly”].intvalue
是int。无法将类型“int”的值分配给类型“string”
请尝试以下修改。
self.BPMTXT.text = "\(itemDict["Base-Pay-Monthly"].intValue)"
self.OTTXT.text = "\(itemDict["Overtime"].intValue)"
self.OthersTXT.text = "\(itemDict["Others"].intValue)"