【发布时间】:2016-10-14 18:22:50
【问题描述】:
我在将数据加载到我的 tableview 时遇到了一些问题。数据似乎没有正确加载。我刚刚开始IOS编程,并且已经在这个问题上停留了一段时间。
Here is a screenshot of my storyboard
override func viewDidLoad() {
super.viewDidLoad()
}
var afspraken = [Afspraak]()
func loadJsonData()
{
let url = URL(string: "https://i342444.venus.fhict.nl/")
let dataTask = URLSession.shared.dataTask(with: url!)
{
(data, response, error)
in
if error != nil
{
print (error)
}
else
{
do
{
let jsonObject = try JSONSerialization.jsonObject(with: data!, options: .allowFragments)
self.parseJsonData(jsonObject as! Array<AnyObject>)
print(data)
}
catch let error as NSError {print("Error parsing JSON: \(error)" )}
}
}
dataTask.resume()
}
func parseJsonData(_ jsonObject: Array<AnyObject>) {
for item in jsonObject
{
let afspraak =
Afspraak(naam: item["naam"] as! String
, adres: item["adres"] as! String
, postcode: item["postcode"] as! String
, woonplaats: item["woonplaats"] as! String
, telefoonnummer: item["telefoonnummer"] as! String
, email: item["email"] as! String
, datum: item["datum"] as! Date
, tijdstip: item["tijdstip"] as! String
, omschrijving: item["omschrijving"] as! String)
afspraken.append(afspraak)
}
self.tableView.reloadData()
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return afspraken.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
let Cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
let currentRow = indexPath.row
let currentAfspraak = self.afspraken[currentRow]
Cell.textLabel?.text = currentAfspraak.naam
return Cell
}
【问题讨论】:
标签: ios json parsing tableview swift3