我正在从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
}
答案 0 :(得分:1)
您混合了numberOfRowsInSection
和numberOfSections
的内容。后者应返回1