[問題] 關於AVAudioPlayer停止播放

看板MacDev作者 ( 我有恐女症YA )時間10年前 (2014/11/21 17:13), 編輯推噓0(007)
留言7則, 2人參與, 最新討論串1/1
各位板友好,在下開始接觸objective-c沒多久,請多指教。 在下想要用晃動改變聲音,但發覺上一個聲音在晃動後關不掉, if ( [accelerometer[0]floatValue]<-1.0 && [accelerometer[1]floatValue]<1.0) {NSURL *fileURL=[[NSBundle mainBundle] URLForResource:@"showregun.wav" withExtension:nil]; playsound=[[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil]; playsound.numberOfLoops=-1; [playsound play]; }else if([accelerometer[0]floatValue]>2.0 && [accelerometer[1]floatValue]>1.0) {[playsound stop]; NSURL *fileURL=[[NSBundle mainBundle] URLForResource:@"GUNSHOW.wav" withExtension:nil]; playsound=[[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil]; playsound.numberOfLoops=0; [playsound play]; } 第一個聲音為循環播放,希望晃動後播第二個聲音時能關掉第一個聲音, 懇請板友指教,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.8.157.115 ※ 文章網址: http://www.ptt.cc/bbs/MacDev/M.1416561214.A.F78.html

11/21 17:54, , 1F
你看一下第二次的 [playsound stop]; playsound是不是nil
11/21 17:54, 1F

11/21 17:54, , 2F
在arc的狀態下這個是會發生的
11/21 17:54, 2F

11/21 18:24, , 3F
果然顯示nill (囧) 有沒有改善方法?
11/21 18:24, 3F

11/21 21:33, , 4F
把[playsound stop]改成[playsound pause]好像就可以
11/21 21:33, 4F

11/21 21:49, , 5F
抱歉 問題沒解決 有時候音效會重複到 就沒用了orz
11/21 21:49, 5F

11/21 23:21, , 6F
除了AVFoundation我另外調了AudioToolbox來處理另一個
11/21 23:21, 6F

11/21 23:22, , 7F
音效檔 寫法滿奇怪就是 暫時解決了問題...
11/21 23:22, 7F
文章代碼(AID): #1KRm8-zu (MacDev)
文章代碼(AID): #1KRm8-zu (MacDev)