如何阻止UIWebView播放mp3?

时间:2011-05-09 11:36:07

标签: objective-c ios ipad uiwebview mp3

我正在将一个MP3文件加载到iPad应用程序的UIWebView控件中,我有UIButton名为已完成的用户希望解除UIWebView和停止音乐,这是一个代码片段:

// points to the mp3 file path
NSURL *url = [NSURL fileURLWithPath:self.sFilePath]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[web loadRequest:request];

当用户点击完成后,我会执行以下操作:

[self.webview removeFromSuperview];
[self.webview release];

但这并没有阻止音乐的播放,我注意到在UIWebView上加载mp3文件打开QuickTime播放器是正确的方法吗?

我非常感谢任何指导或帮助。

2 个答案:

答案 0 :(得分:4)

看起来像Video/audio streaming does not stop even if UIWebView is closed - iPad

的欺骗

那里的解决方案:

[self.webContent loadRequest:NSURLRequestFromString(@"about:blank")];

答案 1 :(得分:1)

我建议您自己使用AVAudioPlayer播放声音(可能是在iOS中播放和控制声音的最简单方法)。

这样的事情:

NSURL *url = [NSURL fileURLWithPath:self.sFilePath];
NSData *mySound = [NSData dataWithContentsOfURL:url];
AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithData:mySound error:NULL];
audioPlayer.numberOfLoops = 0;
[audioPlayer play];

然后您可以将声音停止为:

[audioPlayer stop];

[audioPlayer pause];

不要忘记在项目中包含AVFoundation.framework。