2013-05-31 25 views
1

我有一個UIWebView,我打開了一個網站,但有時委託方法不會被調用,並且UIWebView顯示空白頁面。 但是,當我使用Safari來顯示UIWebView中的HTML代碼時,所有內容都已加載但未顯示。 有沒有人遇到類似的行爲?UIWebView didFinished未調用並顯示空白頁面

我做什麼特別

NSURL *url = ... 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
    [self.cordovaController.webView loadRequest:request]; 

- (void) webViewDidFinishLoad:(UIWebView*)theWebView 
{ 
    NSLog(@"LOADING WEBSITE DONE"); 
} 
-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error 
{ 
    NSLog(@"LOADING WEBSITE DONE WITH ERROR %@", [error description]); 
} 
+1

向我們顯示您的代碼。 –

+0

該網址在瀏覽器中的作品? – Durgaprasad

+0

你是否通過添加一些頭部參數來動態創建網址? –

回答

0

使用UIWebView的委託方法打開URL

#pragma mark UIWebView Delegates - 

    -(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType 
    { 
     if (navigationType == UIWebViewNavigationTypeLinkClicked) { 

      [[UIApplication sharedApplication] openURL:[request URL]]; 
      return NO; //only open in safari not in UIWebView 
     } 
     return YES; 
    } 

我希望這將作品ü

+0

如果有任何查詢plz問我 –

0

您需要記住將UIWebView對象連接(按Ctrl鍵拖動)到ViewController上的filesOwner按鈕(底部的橙色按鈕)並選擇'委託'。你會發現你的代碼現在會被調用。

ctrl drag from UIWebView to files owner and select "delegate"

我希望這有助於。如果確實如此,請將此標記爲正確的+1等。乾杯吉姆。