스위프트 3에 코딩 된 내 게임에서 배경 음악을 갖고 싶습니다. 많은 자습서와 예제 코드를 시도했지만 Swift 3 코드에서 작동하는 구현을 찾을 수 없습니다. 내가 찾을 수있는 가장 좋은 예제 코드는 이것이다 : 나는 "리소스"라는 별도의 폴더에 음악 파일을 넣어 가지고Swift 3의 배경 음악
lazy var backgroundMusic: AVAudioPlayer? = {
guard let url = Bundle.main.url(forResource: "Music Title", withExtension: "mp3") else {
return nil
}
do {
let player = try AVAudioPlayer(contentsOf: url)
player.numberOfLoops = -1
return player
} catch {
return nil
}
}
override func viewDidLoad() {
super.viewDidLoad()
backgroundMusic?.play()
}
. 네가 나를 도울 수 있으면 나는 매우 행복 할 것이다!
파일 이름의 공백을 밑줄로 변경했지만 문제가 계속 발생합니다. 내가 엑스 코드에서 번역 힌트를 수행 할 때 그런데 나는이 코드를 얻을 : lazy var backgroundMusic
에 중단 점을 설정하고 코드에 스테핑 후
lazy var backgroundMusic: AVAudioPlayer? = {
guard let url = Bundle.main.url(forResource: "Mining by Moonlight", withExtension: "mp3") else {
return nil
}
do {
let player = try AVAudioPlayer(contentsOf: url)
player.numberOfLoops = -1
return player
} catch {
return nil
}
}()
override func viewDidLoad() {
super.viewDidLoad()
backgroundMusic?.play()
}
을, 나는 디버거에서 다음과 같은 결과를 얻을 :
0x1029097d8 < +760> : movq 0x69a9 (% rip), % rcx; . (_98A37426C9C75C234890E1E239802C1D에 backgroundMusic.storage) TabTab.ViewController 오프셋 필드를 직접 : Swift.Optional>
그리고 코드를 단계별로 디버거를 사용하면 .....을 발견 했습니까? –
캐시 된 오류를 무시하지 마십시오. 적어도 로그인하십시오. –
함수 항목에서 디버거를 사용할 때 다음과 같이 나타납니다. –