【发布时间】:2017-03-16 08:44:32
【问题描述】:
我有一个表格视图控制器,其中填充了从 JSON 文件中提取的数据。这个表视图控制器与另一个从同一个 JSON 文件中提取的表视图控制器相连接。我希望加载到第二个视图控制器中的信息根据在第一个表视图控制器中单击的表单元格进行更改。
例如:如果我的第一个表格视图控制器列出了州(阿拉巴马州、阿拉斯加州、亚利桑那州等)并且点击了阿拉巴马州,它将返回阿拉巴马州的城市列表。然而,如果点击阿拉斯加,那么第二个表格视图控制器将显示阿拉斯加的城市。
我什至不确定如何从这里开始,但这是我的代码第一个表视图控制器 didSelectRowAtIndexPath 函数: func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { var 行业:行业!
if inSearch{
industry = filteredSearch[indexPath.row]
}
else{
industry = industryOfMifi[indexPath.row]
}
performSegueWithIdentifier("IndustryPush", sender: industry)
}
这是在第二个表视图控制器中加载适当信息的代码:
func parseJSON(){
do{
let data = NSData(contentsOfURL: NSURL(string: "https://jsonblob.com/api/jsonBlob/580d0ccce4b0bcac9f837fbe")!)
let jsonResult = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers)
for anItem in jsonResult as! [Dictionary<String, AnyObject>]{
let industry = anItem["mediaIndustry"] as! String
if industry == "Interactive Media" {
let mifiIndustry = anItem["name"] as! String
print(mifiIndustry)
let mifiId = anItem["employeeId"] as! Int
let newIndustry = Name(mifiName: mifiIndustry, mifiId: mifiId)
industryOfMifi.append(newIndustry)
}
else if industry == "Newspaper" {
let mifiIndustry = anItem["name"] as! String
print(mifiIndustry)
let mifiId = anItem["employeeId"] as! Int
let newIndustry = Name(mifiName: mifiIndustry, mifiId: mifiId)
industryOfMifi.append(newIndustry)
}
else if industry == "Radio" {
let mifiIndustry = anItem["name"] as! String
print(mifiIndustry)
let mifiId = anItem["employeeId"] as! Int
let newIndustry = Name(mifiName: mifiIndustry, mifiId: mifiId)
industryOfMifi.append(newIndustry)
}
}
}
catch let error as NSError{
print(error.debugDescription)
}
}
【问题讨论】:
标签: ios json swift tableview segue