我试图使用变量更新另一个类中的 View ,但由于某些奇怪的原因,我收到了一个 fatal error :在展开可选值时意外发现 nil
。当从 View 存在的页面调用该函数时,该函数起作用,但在其他任何地方都不起作用。我做错了什么吗?
func updateView(trackName: String, image: UIImage){
let view = IntroController()
view.cardLabel.text = trackName
view.cardImage.image = image
}
func startProcess(completionHandler: (Bool) -> ()) -> (){
getUserData{
msg in
if (msg){
print("STEP 1: Get User Data Complete")
self.getSearchTerms{
termRtn in
if (termRtn){
print("STEP 2: Get Search Terms Complete")
self.searchTerms = self.createArray()
self.search{
msg in
if (msg){
print("STEP 3: Search Completed!")
print(parResults.count)
self.downloadImages{ dlComplete in
if (dlComplete){
print("STEP 4: CardImage has been downloaded or created")
updateView(trackName: "test1", image: UIImage(named: "test");
completionHandler(true)
}
}
}
}
}
}
}
}
}
最佳答案
由于您提供的代码不多,我仍然会尝试回答。您实例化的 IntroController
可能在其构造函数中没有任何加载实际 XiB 的代码。因此,您正在尝试引用尚未加载其 View 的 IntroController
的 View 属性。如果您需要更多帮助,请发布 IntroController
的内容。
关于ios - 使用变量更新 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34534987/