gpt4 book ai didi

ios - 将 JSON 对象传递到 TabBarViewController

转载 作者:行者123 更新时间:2023-11-30 13:42:29 26 4
gpt4 key购买 nike

我正在创建一个 iOS 应用程序。当我单击“登录”按钮时,服务器通过将 JSON 发送回应用程序进行响应。我知道信息正在被发回,因为我可以从 LoginVC 打印信息。

登录成功后,我想将服务器响应“传递到应用程序”。截至目前,我正在使用以下两行“移入应用程序”:

 let TabBarViewControllerObejct = self.storyboard?.instantiateViewControllerWithIdentifier("TabBarViewController")
self.navigationController?.pushViewController(TabBarViewControllerObejct!, animated: true)

我希望该响应可用于选项卡栏 Controller 中的所有 View ,因此我尝试为 TabBarVC 创建一个类并添加一个属性,但是在响应期间为其分配值时,它失败并且无法找到该特性。

我还尝试将 navController 插入 TabBarVC 中的第一个 View ,但随后我丢失了选项卡栏。

我尝试使用上面的语句来实例化 TBVC,然后将该类的属性设置为响应字符串。我无法正确分配它,因此无法根据需要从内部 View 中访问它。

我创建了一个名为 TabBarController 的 Swift 文件,它是 UITabBarController 的子类,并且我指示 XIB 使用该类。我在该类中创建了一个响应变量,并尝试在上述语句之间设置该属性。TabBarViewControllerObject.responseString = value 不起作用,因为我实例化了 UIViewController,而不是 UITabBarController。我尝试更改第一个语句以包含 as! TabBarController,然后是针对不匹配类型的 pushViewController 函数。

最佳答案

经过大量研究,很明显我正在尝试从一个 View 到另一个 View 进行相当不安全的内存泄漏。最终的决定是改变策略,使用某种形式的存储来放置响应字符串,然后从另一个 View 中从该存储中获取。

我在 NSUserDefaults 上找到了一些信息,这些信息(对于我的情况)完美无缺。

要以这种方式将某些内容保存到存储中:

导入 Foundation 以使用 NSUserDefaults 对象

var defaults = NSUserDefaults.standardUserDefaults() 初始化默认值

self.defaults.setObject(VALUE_TO_STORE, forKey: "KEY_NAME") 用于存储键为 KEY_NAME 且值为 VALUE_TO_STORE 的字符串。

然后在另一个 View 中以相同的方式初始化默认值,当您想要检索该值时使用defaults.stringForKey("KEY_NAME")!

希望这可以帮助那些像我一样陷入困境的人。

关于ios - 将 JSON 对象传递到 TabBarViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35397968/

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