【发布时间】:2015-05-19 02:10:04
【问题描述】:
文件播放后,应用程序崩溃,我收到此错误:
-[fefef.ViewController lavEnFunktionDerSkifterTitle(sender as!UIButton)]: 无法识别的选择器发送到实例 0x7f9883785f40
我该如何解决?
这是我的代码:
@IBAction func play(sender: AnyObject) {
musikAfspiller("wwww.myurl.com")
lavEnFunktionDerSkifterTitle(sender as! UIButton)
}
func musikAfspiller (url: String) {
let playerItem = AVPlayerItem( URL:NSURL( string:url ) )
player = AVPlayer(playerItem:playerItem)
player.play()
NSNotificationCenter.defaultCenter().addObserver(self, selector:"lavEnFunktionDerSkifterTitle()",name: AVPlayerItemDidPlayToEndTimeNotification, object: playerItem)
}
func lavEnFunktionDerSkifterTitle(sender: UIButton) {
if counter == 1 {
counter = 2
sender.setTitle("Stop", forState: UIControlState.Normal)
} else {
counter = 1
sender.setTitle("Play", forState: UIControlState.Normal)
}
}
【问题讨论】:
-
你用的是iOS模拟器吗?还是在实际的 iPhone 上?如果在 iOS 模拟器上,你是在 Mac Mini 上运行吗?
-
define : NSNotificationCenter.defaultCenter().addObserver(self, selector:"lavEnFunktionDerSkifterTitle:",name: AVPlayerItemDidPlayToEndTimeNotification, object: playerItem)
-
我在 macbook pro 和 iPhone 上都使用模拟器。应用仍然崩溃。
-
写 NSNotificationCenter.defaultCenter().addObserver(self, selector:"lavEnFunktionDerSkifterTitle:",name: AVPlayerItemDidPlayToEndTimeNotification, object: playerItem) 而不是 NSNotificationCenter.defaultCenter().addObserver(self, selector:"lavEnFunktionDerSkifterTitle ()",名称:AVPlayerItemDidPlayToEndTimeNotification,对象:playerItem)