我有一个问题:我有一个简单的应用程序,其中包含一个菜单和一个指向网页的链接。该网页是:“soundcloud”它是一个生成音乐的站点。例如,如果我播放音乐并返回我的应用程序的菜单,当我返回网页时,音乐仍在播放,音乐还在,但页面归零。我想防止这种情况发生。对不起我的英语我是法国人-</p>
亲切的戴维
编辑:这是假设页面包含在您的应用程序内的 UIWebView 中。如果它是在 Safari 中打开的链接,我不相信您将能够阻止 Safari 中的导航……但在您自己的网络视图中可以。
将控制类(无论哪个视图控制器包含您的 Web 视图)设置为 UIWebView 委托。然后,当您实现委托协议时:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{ //If you want to block ANY navigation
return NO;
//If you want to block refreshes but allow other navigation
if (navigationType == UIWebViewNavigationTypeReload) return NO;
{
灵感来自@Reid Belton 的回答
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
//to prevent reloading html if it is already loaded
if( isHTMLLoaded)
{
return NO;
}else{
isHTMLLoaded = YES;
return YES;
}
}