基本上,音频按钮可以正常工作,但停止按钮却不能。它给了我一些问题,但是不会崩溃并且不起作用。

.h文件:

@property (nonatomic, retain) AVAudioPlayer *elSonido4;

    -(IBAction)fajitas1:(id)sender;

    -(IBAction)stopPressed:(id)sender;

.m文件:
@synthesize elSonido4;

-(IBAction)fajitas1:(id)sender{

    NSString *path=[[NSBundle mainBundle]pathForResource:@"fajitas" ofType:@"m4a"];
    elSonido4=[[AVAudioPlayer alloc]initWithContentsOfURL:[NSURL fileURLWithPath:path]error:NULL];
    elSonido4.delegate=self;
    [elSonido4 play];

}


   - (IBAction)stopPressed:(id)sender{
    [elSonido4 pause];
}

有什么建议么?如果可能,在更改 View 时是否可以停止所有声音?

最佳答案

AVAudioPlayer*elSonido4;方法中删除-(IBAction)fajitas1:(id)sender行,

在您的停止按钮事件中尝试此操作

if([elSonido4 isPlaying])
    {
        NSLog(@"was playing and now paused");
        [elSonido4 pause];
    }
else {NSLog (@"Button tapped but audio is over");}

假设您在.h文件中使用了<AVAudioPlayerDelegate>

08-17 02:42