我正在使用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()
}
}
非常感谢任何人的想法。
答案 0 :(得分:0)
在IBOutlet
中添加{1}}表格视图。在这里重新加载您的tableview:
ViewController