我的问题是:斯威夫特2 JSON解析,但不追加全球价值阵列
class BackVC: UITableViewController {
var strArr = Array<String>()
这个数值与viewDidLoad中初始化()函数
override func viewDidLoad() {
super.viewDidLoad()
strArr = Array<String>()
,写这个JSON解析码的后面
let generalUrl = NSURL(string: "my json address")
let path = NSURLSession.sharedSession().dataTaskWithURL(generalUrl!) { (data, response, error) -> Void in
if let dataPath = data {
do {
let jsonResult = try NSJSONSerialization.JSONObjectWithData(dataPath, options: NSJSONReadingOptions.MutableContainers)
if let catArr = jsonResult["categories"] as? NSArray {
for c in catArr {
self.strArr?.append(c as! String)
}
}
} catch {
print("json data read error")
}
}
}
path.resume()
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! ImageCell
print("strArr") or print("\(strArr)") is nil
}
有什么不对?
此代码无法编译,因为此行中有问号'self.strArr?.append(c as!因为'strArr'被声明为非可选的。 – vadian