我正在将一个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播放器是正确的方法吗?
我非常感谢任何指导或帮助。
答案 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。