访问范围之外的类数据

时间:2016-07-01 19:57:22

标签: swifty-json

我正在使用swift (2.3),而且我遇到了访问我创建的变量的问题。

我正在尝试获取namesArray

的更新内容

我可以通过1)readableJSON从我的班级获取JSON数据(通过let.pdf = getData..),然后2)pfd.getPetData...

但我无法弄清楚如何将这个新填充的namesArray反馈到此“范围”之外(这是正确的术语吗?),以便我可以在super.viewDidLoad之外访问它

最终,我想要数组的计数:

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return namesArray.count    
}

这是核心区域,只需几分钟即可查看。

import UIKit
import SwiftyJSON
class ViewController: UIViewController, UITableViewDelegate {

    var namesArray = [String]()
    override func viewDidLoad() {
        super.viewDidLoad() 

        let pfd = getData()

        pfd.getPetData { readableJSON in

            for (key,subJson) in readableJSON[]["data"] {
                let title = subJson["title"].string!
                namesArray.append(title) 
            } 
        }
        print("There are \(self.namesArray.count) items in namesArray now")
    }

    class getData {
        func getPetData(completion: (JSON) -> ()) {
            let url = NSURL(string: "<my_JSON_URL_HERE>
            let task = NSURLSession.sharedSession().dataTaskWithURL(url) { (data, response, error) -> Void in
            let readableJSON = JSON(data:data!)
            completion(readableJSON)
            }
            task.resume()

        }
    }

非常感谢任何人的想法。

1 个答案:

答案 0 :(得分:0)

IBOutlet中添加{1}}表格视图。在这里重新加载您的tableview:

ViewController