我試圖將一些數據從數據庫中顯示到TableView
,但數據未顯示在TableView
中。我收到的數據以JSON格式化。用Swift在TableView中顯示JSON數據
這是我收到的數據形成數據的基礎,我想在TableView
打印什麼只是大衛:
{"name":"David"}
這是代碼從德數據庫中的數據:
let session = NSURLSession.sharedSession()
let request = NSURLRequest(URL: NSURL(string: "http://localhost:8888/Patients.php")!)
let task = session.dataTaskWithRequest(request) {data, response, downloadError in
if let error = downloadError {
print("Could not complete the request \(error)")
}
else {
do {
self.json = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.AllowFragments)
} catch {
fatalError()
}
dispatch_async(dispatch_get_main_queue(), {
if let parseJSON = self.json{
let name = parseJSON["name"] as! String
self.arrayData.append(name)
print("Data1:\(self.arrayData)")
}
})
}
}
task.resume()
arrayData是array
這裏我把我從數據庫接收數據,並聲明如下:
var arrayData: [String] = []
在控制檯此Data1:["David"]
代碼
print("Data1:\(self.arrayData)")
演出,所以我得到正確的數據。
然後我實現方法在'TableView'打印時,numberOfSectionsInTableView
的方法,該方法numberOfRowsInSection
和cellForRowAtIndexPath
方法,但數據未在TableView
打印。
我認爲問題在於我在將數據放入array
之前繪製了TableView
,所以它沒有打印任何內容,因爲數組是空的,我不知道如何解決它。
任何人都知道我的問題是什麼?
您是否在更改數組內容後嘗試調用'tableView.reloadData()'? –
這解決了我的問題!謝謝塞巴斯蒂安! – David