Я пытаюсь воспроизвести звук в Swift 2, но получаю сообщение об ошибке:
Thread 1: EXC_BAD_INSTRUCTION(code=EXC_I386_INVOP, subcode = 0x0)
что-то меняется с swift 1 на 2, поэтому я вставил ключевую фразу, но теперь это не работает Код:
import UIKit
import AVFoundation
class ViewController: UIViewController {
@IBOutlet weak var PausePlay: UIButton!
--> var ButtonAudioURl = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("Tutava", ofType: "aif")!)
var ButtonAudioPlayer = AVAudioPlayer()
override func viewDidLoad() {
super.viewDidLoad()
do {
ButtonAudioPlayer = try AVAudioPlayer(contentsOfURL: ButtonAudioURl)
} catch _ {
}
}
@IBAction func PlayAudio(sender: AnyObject) {
ButtonAudioPlayer.play()
}
}
Кто может мне помочь? спасибо
ButtonAudioURL
внутриviewDidLoad
? - person trojanfoe   schedule 24.07.2015ButtonAudioPlayer
, а также уже инициализированную вviewDidLoad
. - person trojanfoe   schedule 24.07.2015viewDidLoad
, а не удалять переменную. - person trojanfoe   schedule 24.07.2015EXC_BAD_INSTRUCTION
связан с опциями разворачивания (и другими, но...). Что-нибудь вроде этой фатальной ошибки: неожиданно найдено nil при развертывании необязательного значения в консоли? Если да, то проблема в!
-NSBundle.mainBundle().pathForResource("Tutava", ofType: "aif")!
Вы уверены, что он включен в цель? Поместитеprint(NSBundle.mainBundle().pathForResource("Tutava", ofType: "aif"))
в свойviewDidLoad
и отправьте вывод консоли, когда появится ваш контроллер представления. - person zrzka   schedule 24.07.2015