gpt4 book ai didi

json - 我们怎样才能在firstVC中获取secondVC json值而不需要在swift中转到secondVC

转载 作者:行者123 更新时间:2023-11-30 10:35:07 25 4
gpt4 key购买 nike

我的firstVC json包含所有其他 View Controller json id...这里我想在推送到其他 View Controller 之前我需要将它与home home json id进行比较这里这2个id是相同的我需要推送那个VC..所以这里在不使用任何其他 View Controller 的情况下,我们如何获取它们的 id 以便在 homeVC 中进行比较...请在这里帮助我。

我尝试了两种方法:

1)在第二个VC中声明变量并为其分配第二个VC id值并在第一个VC中调用它

在第一个VC代码中:

let goVC = self.storyboard?.instantiateViewController(withIdentifier: "SecondViewController") as? SecondViewController

var goId: String = goVC.secndId ?? ""
print("the goid is \(goId)")// getting nil
if(goId == allIdArray)
{
self.navigationController?.pushViewController(goVC, animated: true)
}

在第二个VC中:

var secndId: String?
secndId = jsonObj["sid"] as? String

2) 使用钥匙串(keychain)包装器存储 secondaryVC json id 并在firstVC 中检索它

首先:

let goVC = self.storyboard?.instantiateViewController(withIdentifier: "SecondViewController") as? SecondViewController

let goId: String = KeychainWrapper.standard.string(forKey: "sid") ?? ""
print("the goid is \(goId)")// getting nil
if(goId == allIdArray)
{
self.navigationController?.pushViewController(goVC, animated: true)
}

在第二个VC中:

var secndId: String?
self.secndId = jsonObj["sid"] as? String
KeychainWrapper.standard.set(self.secndId ?? "", forKey: "sid")

这里allIdArray包含所有VC的id,sid是第二个VC的json id

在这两种情况下我都得到零,为什么?我想比较firstvc中的secondvc id,而不需要去secondvc。

请帮助我完成上面的代码。

最佳答案

你的整个逻辑设计不太好,但如果我直接回答你的问题,并考虑到解释也不是很好,这里给你一个建议:

  let vcID = 1

let viewControllers = [1 : FirstVC.self, 2 : SecondVC.self, 3 : ThirdVC.self]
for (id, vcType) in viewControllers {
if id == vcID {
//assuming that you assign storyboard identifiers exactly matching classes' names, otherwise this guard statement won't succeed
guard let goToVC = storyboard?.instantiateViewController(withIdentifier: "\(vcType)") else { return }
//if you need to pass any data before you present this VC, then you will need to safely cast into known VC types
self.present(goToVC, animated: true, completion: nil)
}
}

关于json - 我们怎样才能在firstVC中获取secondVC json值而不需要在swift中转到secondVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58200674/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com