我有两个视图控制器,一个是主ViewController,在底部我推出容器视图,该容器连接到另一个我想在主ViewController中显示的NewViewController . 我在ViewController中将JSON数据设置为NewViewController的标签,它给出了我的错误作为致命错误:在展开Optional值时意外发现nil
ViewController.swift
let nvc = NewViewController()
func someFunction {
let data = JSON as! NSDictionary
let result = data["result"] as! NSArray
let mytitle = result.valueForKey("name") as! NSArray
let count = mytitle.count - 1
for index in 0...count {
let nameOfPlace = mytitle[index] as! String
print(nameOfPlace) //prints all the names of places
self.nvc.nameLabel.text = nameOfPlace //Thread 1:EXC_BAD_INSTRUCTION
}
NewViewController.swift
@IBOutlet weak var nameLabel: UILabel!
1 回答
在显示之前,请勿设置
UIViewController
的任何IBOutlet
.IBOutlet
可能尚未初始化 . 我建议创建一个字符串属性,在初始化UIViewController
并将该文本设置为viewDidLoad
或viewWillAppear
方法中的UILabel
时设置它 .希望这有帮助!