override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { var DestViewController = segue.destinationViewController as! AirViewController let headers2 = [ "Accept":"application/json", "X-User-Phone": "18516591232", "X-User-Token": "CL-QVwfSZSUAcsEVFscc" ] let body = [ "sub_sys_name":"空调系统" ] Alamofire.request(.POST, "http://139.196.190.201/rooms/1/devices/search", headers: headers2, parameters: body) .responseString { response in let json = JSON(data: response.data!) var peidians_detail = json["devices"] var arry = peidians_detail.count Airid = [] Airname = [] for (name1, value1) in peidians_detail { Airid.append(value1["id"].stringValue) Airname.append(value1["name"].stringValue) } } DestViewController.navigationItem.title = "空调系统" } }
在另一个tableview读取数组count
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { // #warning Incomplete implementation, return the number of rows return Airname.count }
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { var DestViewController = segue.destinationViewController as! AirViewController let headers2 = [ "Accept":"application/json", "X-User-Phone": "18516591232", "X-User-Token": "CL-QVwfSZSUAcsEVFscc" ] let body = [ "sub_sys_name":"空调系统" ] Alamofire.request(.POST, "http://139.196.190.201/rooms/1/devices/search", headers: headers2, parameters: body) .responseString { response in let json = JSON(data: response.data!) var peidians_detail = json["devices"] var arry = peidians_detail.count Airid = [] Airname = [] for (name1, value1) in peidians_detail { Airid.append(value1["id"].stringValue) Airname.append(value1["name"].stringValue) } tableView.reloadData() } DestViewController.navigationItem.title = "空调系统" } }
因为Alamofire获取数据是异步的, 所以在获取数据的时候reloadData()一下刷新数据.