gpt4 book ai didi

ios - 在不同 View Controller 中使用时返回 nil 值的全局变量

转载 作者:行者123 更新时间:2023-11-30 12:46:35 24 4
gpt4 key购买 nike

我有 4 个全局变量(字符串数组),我将它们附加到一个 View Controller (比如firstViewController)中。当我尝试在另一个 View Controller 中访问它们时附加值后,将传递 nil 值

第一个 View Controller

print("\(json)")
if let stockInfo = json?[0] {

if let value = stockInfo["l"] as? String {
print("Teja\(value)")
stockCurrentValue.append(value)
print("Teja\(stockCurrentValue)")

}

if let cp = stockInfo["cp"] as? String{
print("Teja\(cp)")
stockCp.append(cp)
print("Tea\(stockCp)")
}

if let c = stockInfo["c"] as? String{
print("Teja\(c)")
stockC.append(c)

}
if let pcls_fix = stockInfo["pcls_fix"] as? String{

print("Teja\(pcls_fix)")
stockPrevValue.append(pcls_fix)

}


}

变量stockCurrentValue、stockC、stockCP、stockPrevValue是我声明的四个全局变量。

但是当我尝试在新的 viewController 中访问它们时

第二个 View Controller

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

print(selectedStockNames.count)
return selectedStockNames.count


}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "myStocks") as! StockCell

cell.stockNameCell.text = selectedStockNames[indexPath.row]


print("Teja123\(stockCurrentValue)")

stockValueFromGF = selectedStockValues[indexPath.row]

print("Teja123\(stockCp)")

return cell
}

因此,当我在firstViewContoller中打印StockCp值时,我得到了该值,但是当我尝试在seconViewController中打印相同的变量时,我得到“[]”(零值)

最佳答案

使用协议(protocol)并在要设置值的 View Controller 中定义它。

使用函数内部全局变量值发生变化的方法。

调用该函数并在要访问变量的 View Controller 中设置委托(delegate)。

关于ios - 在不同 View Controller 中使用时返回 nil 值的全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41560754/

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