我已将ViewController()
设置为sharedInstance
。当我尝试从另一个视图触发函数时,共享函数返回
致命错误:解开Optional值时意外发现nil
我不明白为什么使用sharedInstance
给我一个错误,并且如果我从`ViewController'内部调用函数,它会很好地工作
class ViewController: UIViewController {
static let sharedInstance = ViewController()
@IBOutlet weak var playBtn: UIButton!
///
///
func audioPlayerIsNotPlaying() {
print("stop") //runs
playBtn.selected = false //fatal error: nil
playBtn.setImage(UIImage(named: "playBtn.png"), forState: UIControlState.Normal ) //fatal error: nil
}
}
第二视图控制器:
ViewController.sharedInstance.audioPlayerIsNotPlaying()
为什么
playBtn
按钮对象返回nil
? 最佳答案
以编程方式创建的视图将没有设置出口。您需要从笔尖或情节提要中创建实例。
关于ios - Swift 2-sharedInstance函数返回nil,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33907325/