Json数据未追加到数据模型中:Swift

时间:2019-03-11 10:30:06

标签: swift xcode

我正在从API解析数据。输出正在打印,但数据未添加到数组中。我试图获取一个表视图以显示已解析的数据,但没有添加应该填充到我的表视图中的数组。有人可以快速浏览一下,让我知道我在做什么错吗?

var jsonServiceInfo = [SmsHistory]()

func apiFunction(selectedValue : String){

    let userToken: HTTPHeaders = [

        "Authorization": "bearer \(accessToken)",
        "Content-Type": "application/x-www-form-urlencoded"
    ]
    let parms : [String : String] = ["CustomerID" : customerID ,"DateTo" : dateTotxtfield.text!, "DateFrom" : dateFromtxtfield.text!  ]
    if selectedValue == "SMS"{
    getSMSHistory(url: getSMSHistoryUrl, parameter: parms, token: userToken){
        (isDone) in
        if isDone{
           self.messageHistorytableview.reloadData()
        }
        }

    }

}


     func getSMSHistory(url : String , parameter : [String : String] , token : HTTPHeaders , completion : @escaping (_ isDone : Bool) -> ()){
    Alamofire.request(url, method: .get, parameters: parameter, headers: token).responseJSON { (response) in
        if response.result.isSuccess{
            let jsonArray: JSON = JSON(response.result.value!)
            let jsonContent = jsonArray["Content"]
            print(jsonContent)
            print(jsonContent)
            for arr in jsonContent.arrayValue{
               self.jsonServiceInfo.append(SmsHistory(json: arr))

            }
        }
  completion(true)
    }
}
    func numberOfSections(in tableView: UITableView) -> Int {
    return jsonServiceInfo.count
  }
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 1
   }
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "customMessageCell" , for: indexPath) as! SMSHistoryTableViewCell
    cell.messagelbl.text = jsonServiceInfo[indexPath.row].smsBody
    return cell
    }

1 个答案:

答案 0 :(得分:1)

您混合了numberOfRowsInSectionnumberOfSections的内容。后者应返回1