0
在我的iOS應用程序中,我使用Alamofire作爲休息請求,並使用SwiftyJSON進行分析。其餘的網址正在工作,我從服務器獲取所有數據,我將其打印在控制檯中。但我無法用UITableView填充這些數據。我沒有得到任何錯誤,項目編譯和運行沒有任何問題,但表視圖是空的。這是我簡單的代碼:使用Alamofire + SwiftyJSON將數據加載到UITableView中
var contracts = [Contract]()
override func viewDidLoad() {
super.viewDidLoad()
getContracts(contractSearchCriteria: ContractSearchCriteria())
}
// MARK: - Table view data source
override func numberOfSections(in tableView: UITableView) -> Int {
return 0
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if (contracts.count != 0) {
return contracts.count
}
return 0
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "contractCell", for: indexPath)
let contract = self.contracts[indexPath.row]
cell.textLabel?.text = contract.insuredPersonFullName
cell.detailTextLabel?.text = contract.companyName
return cell
}
這是getContracts方法:
func getContracts(contractSearchCriteria : ContractSearchCriteria) {
let params : Parameters = ["insuredPersonName": contractSearchCriteria.insuredPersonName]
Alamofire.request("\(Constants.restURL)getContracts", method: .post, parameters: params, encoding: JSONEncoding.default).validate().responseJSON(completionHandler: {response in
switch (response.result) {
case .success(let value):
let json = JSON(value)
let result = Result(json: json)
print(result.isSuccess)
for data in json["data"].arrayValue {
print(data)
self.contracts.append(Contract(json: data))
}
self.tableView.reloadData()
case .failure(let error):
print(error)
}
})
}
我使用SWIFT 3,和最新的Alamofire與SwiftyJSON在Xcode 8.什麼是錯在我的代碼?我找不到任何解決方案。
tnx。 soooo愚蠢的錯誤:) –