我已将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/

10-11 01:57