Как заполнить мой табличный вид изменяемым массивом из json
Поэтому я выбираю данные с URL-адреса в формате json. Я пытаюсь отобразить данные в виде таблицы, но, хотя это кажется простым, я не могу понять, как это сделать.
class CompanyModel {
func getJSON() {
let companyArray: NSMutableArray = NSMutableArray()
let requestURL: NSURL = NSURL(string: "http://localhost/Companies/JSON.php")!
let urlRequest: NSMutableURLRequest = NSMutableURLRequest(URL: requestURL)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(urlRequest) {
(data, response, error) -> Void in
let httpResponse = response as! NSHTTPURLResponse
let statusCode = httpResponse.statusCode
if (statusCode == 200) {
print("Everyone is fine, file downloaded successfully.")
do{
let json = try NSJSONSerialization.JSONObjectWithData(data!, options:.AllowFragments)
if let companies = json["companies"] as? [[String: AnyObject]] {
for company in companies {
if let name = company["name"] as? String,
let phoneNumber = company["phone_number"] as? String,
let website = company["website"] as? String,
let email = company["email"] as? String,
let address = company["address"] as? String
{
let company = CompanyModel()
company.name = name
company.phoneNumber = phoneNumber
company.website = website
company.email = email
company.address = address
}
companyArray.addObject(company)
print(companyArray)
}
}
} catch {
print("Error with Json: \(error)")
}
}
print(companyArray) <- array is populated
}
print(companyArray) <- array is empty
task.resume()
}
}
Я знаю, что делал это раньше ....viewDidLoad()
Я бы позвонилCompanyModel().getJSON()
который извлекал бы данные, а затем сохранял их в пустом массиве, но я чувствую себя пустым от того, как это сделать.
Я не могу объявить переменную NSarray и сохранить данные этой переменной непосредственно для меня, чтобы затем заполнить таблицу. Тем не менее, я надеюсь, что это объясняет то, что я пытаюсь достичь.