TableView数据单元JSON

时间:2015-10-28 12:43:00

标签: json swift parsing tableview

我正在创建一个解析JSON数据的应用程序填充tableview。但是,无论我尝试什么,我都无法正确检索数据。它就在那里,但我不能正确地将它打印到细胞中。我为JSON设置了以下代码:

// JSON

    let url = NSURL(string:"https://www.kimonolabs.com/api/7flcy3qm?apikey=gNq3hB1j0NtBdAvXJLEFx8JaqtDG8y6Y")!
    let session = NSURLSession.sharedSession()
    let task = session.dataTaskWithURL(url) { (data, response, error) -> Void in

        if error != nil {
            print(error)
        } else {
            if data != nil {
                // Create JSON object from data
                let json = JSON(data: data!)

                // Check if array for key "collection2" exists
                if let collection2 = json["results"]["collection2"].array {
                    // Create JSON array from it and loop for each object

                    for (_, subJson):(String, JSON) in JSON(collection2) {
                        // Check if dictionary for key "Event" exists

                        var data: [String: Any] = [String: Any]()

                        if let event = subJson["Event"].dictionary {
                            print(event)

                        }

                        // Check if string for key "Hasta" exists
                        if let text = subJson["Event"]["text"].string {
                            data["text"] = text
                            self.TableData.append(text)
                            print(text)
                        }

                        // Check if string for key "Hasta" exists
                        if let hasta = subJson["Hasta"].string {
                            data["hasta"] = hasta
                            self.TableData.append(hasta)
                            print(hasta)
                        }

                        // Check if string for key "Location" exists
                        if let location = subJson["Location"].string {
                            data["location"] = location
                            self.TableData.append(location)
                            print(location)
                        }

                        self.TableData.append(data)


                    }

                    self.tableView.reloadData()
                }
            }
        }
    }

    task.resume()

}

当我尝试在单元格中打印信息时出现问题,现在我重复了第一个索引行。但是,我也喜欢那里的所有其他行。这是我到目前为止所尝试的,并且遇到“转换字符串”的问题,我已经注释掉了一些没有得到我想要的结果的选项。 覆盖func tableView(tableView:UITableViewcellForRowAtIndexPath indexPath: NSIndexPath) - > UITableViewCell {

    let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! MasterTableViewCell

    let data = self.TableData[indexPath.row]


    //cell.textLabel1?.text = data["hasta"]
    //cell.textLabel1?.text = self.TableData[3]

    cell.textLabel?.text = data[hasta]

    //cell.textLabel2?.text = self.TableData[4]
    //cell.textLabel3?.text = self.TableData[2]

    return cell

}

有什么想法?非常感谢大家! :)

0 个答案:

没有答案