此代码获取JSON数据并在视图控制器上显示此代码所在的位置。我试图找出如何使用此页面上的结果在另一个视图控制器上将大部分代码来自第二个视图控制器下面我试图获取要显示的代码的结果。
func paraseData()
{
fetchedFiName = []
let url = ""
var request = URLRequest(url: URL(string: url)!)
request.httpMethod = "GET"
let configuration = URLSessionConfiguration.default
let session = URLSession(configuration: configuration, delegate: nil, delegateQueue: OperationQueue.main)
let task = session.dataTask(with: request) { (data, response, error) in
if error != nil {
print("Error")
}
else{
do{
let fetchedData = try JSONSerialization.jsonObject(with: data!, options: .mutableLeaves) as! NSArray
//print(fecthdata)
for eachFetchedfiName in fetchedData {
let eachfiName = eachFetchedfiName as! [String :Any]
let fiName = eachfiName["financial_institution"] as! String
let oneYear = eachfiName["one_year"] as! String
let twoYear = eachfiName["two_year"] as! String
let threeYear = eachfiName["three_year"] as! String
let fourYear = eachfiName["four_year"] as! String
let fiveYear = eachfiName["five_year"] as! String
self.fetchedFiName.append(rates(fiName: fiName, oneYear: oneYear, twoYear: twoYear, threeYear: threeYear, fourYear: fourYear, fiveYear: fiveYear))
}
//print(self.fetchedFiName)
self.mtgRates.reloadData()
}
catch{
print("Error 2")
}
}
}
task.resume()
}
}
class rates {
var fiName: String
var oneYear: String
var twoYear: String
var threeYear: String
var fourYear: String
var fiveYear: String
init(fiName: String, oneYear: String, twoYear: String, threeYear: String, fourYear: String, fiveYear: String) {
self.fiName = fiName
self.oneYear = oneYear
self.twoYear = twoYear
self.threeYear = threeYear
self.fourYear = fourYear
self.fiveYear = fiveYear
}
}
这是我试图将结果传递给第二个视图控制器的代码。我试图用JSON数据中的贷方名称填充pickerview ...我已经在这个问题上苦苦挣扎了好几天......想一想。
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
return fetchedFiName[row].fiName
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return fetchedFiName.count
}
func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
lenderName.text = fetchedFiName[row].fiName
self.view.endEditing(false)
}
答案 0 :(得分:0)
Investigate seques。离开当前视图控制器时,可以在目标视图控制器上设置值。代码看起来像:
StatementResult result1 = session.run(
"MATCH (n) where n.label = {label} RETURN n",
parameters( "label", "C0000119")
);
List<Node> nodes = new ArrayList<Node>();
while ( result1.hasNext() )
{
Record record = result1.next();
Value value = record.get("n");
System.out.println( value.asString() );
nodes.add(value.asNode());
}