提问者:小点点

stringValue中的Int和


我正在解析数据从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”类型


共1个答案

匿名用户

错误信息非常清楚。

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)"