问题:我正在为我的应用测试不同的声音文件,但每次更改文件名时,模拟器都会播放旧文件。在我关闭模拟器后,有些东西告诉我我的fileURL
没有dealloc'的问题。我试过手动dealloc,但我想这与ARC一起出去了?
我的代码如下所示:ViewController.h:
@interface ViewController : UIViewController {
AVAudioPlayer *playIntro;
}
-(IBAction) play;
ViewController.m:
-(IBAction)play; {
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"test2" ofType:@"wav"];
NSURL *fileURL2 = [[NSURL alloc] initFileURLWithPath:soundPath];
playIntro = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL2 error:nil];
playIntro.volume = 1;
[playIntro play];
}
视图控制器有一个链接“播放”链接到IBAction。
如果我运行测试并按下播放,则播放test2.wav
。
关闭模拟器并将pathForResource
更改为@"test3"
ofType:@"wav"
并重新运行模拟器,它仍会播放test2.wav
。我的应用程序将有几个视图控制器与几个按钮播放音频。我担心如果我使用我在这里得到的东西,这个问题就会成倍增加。