2012-11-08 59 views
1

在iOS 6.0.1上使用UIWebView在我的iPad應用程序上顯示兩個HTML5文檔。
其中之一沒有問題,我可以打開和關閉webview儘可能多。 另一個可以顯示一次,然後當我關閉我的網絡視圖,並希望再次打開文檔時,web視圖顯示黑屏。在使用iOS6的UIWebView上第二次查看HTML5時出現黑色屏幕

我自己並沒有準備好HTML5文檔,也沒有太多有關HTML5的知識,所以我無法分辨它們之間的差異導致這種行爲。

這裏是我如何創建我的WebView,我怎麼加載HTML5:

UIWebView *theWebView = [[UIWebView alloc] init]; 

theWebView.scalesPageToFit = YES; 
theWebView.clearsContextBeforeDrawing = YES; 
theWebView.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight); 

//adjust frame and add to view controller's view here 

NSURL *url = [NSURL URLWithString:@"http://www.handypdf.net/davsan"]; 
[theWebView loadRequest:[NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:60.0]]; 

每次我打開一個HTML5文檔,我重新創建Web視圖。所以我不重複使用它。

爲了解決這個問題,我嘗試清理緩存,餅乾等。在these解釋SO答案,但它沒有奏效。

這裏是鏈接到有問題的和不-問題的HTML文檔:

This one工作正常。 This one第二次不起作用。

另外,如果你想在網上檢查這些HTML5網頁的鏈接,他們說:

This one工作正常。 This one第二次不起作用。

這個問題在iOS 5.x上不會發生。它也可以使用iOS模擬器進行復制。 你會建議如何解決它?

THX

+0

我現在看起來有這個確切的問題。你有沒有碰到這方面的進展? –

+0

我也是,請讓我們知道... – Xarialon

+0

嘿傢伙,我把我怎麼處理這個答案。希望這也適用於你... – aslisabanci

回答

0

不是一個令人滿意的答案,但這裏是我進展如何解決這個問題:

我解決不了這個幾天的。然後我刪除了我的所有代碼,並重新編寫了這些功能,然後解決了它。我無法理解的確切原因,因爲我沒寫任何幻想我的第二次嘗試,所以很遺憾我不能告訴它如何解決:(

這裏是我只是做:

創建Web視圖一次,並將它緩存:

+(UIWebView *)getTheWebView { 
    if (theWebView) return theWebView; 

    theWebView = [[UIWebView alloc] init]; 
    theWebView.scalesPageToFit = YES; 
    theWebView.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight); 
    return theWebView; 
} 

然後,當我想顯示Web視圖:

UIWebView *theWebView = [HTML5Manager getTheWebView]; 
theWebView.frame = self.view.frame; 

[self.view addSubview:theWebView]; 

這裏就是我如何加載網址:

[theWebView loadRequest:[NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:60.0]]; 

這就是它,它的工作原理。我知道這是沒有道理的,但我希望它也可以幫助你,...