2013-02-21 66 views
0

我有一個ViewController(帶有UIWebView)和一個CreateEntryViewController(帶有另一個UIWebView)。當我用[self presentViewController:vc2 animated:TRUE completion:nil];更改爲CreateEntryViewController時。UIWebView裏面的子ViewController不加載

在此負載我叫-(void)updateView執行以下操作:

- (void)updateView { 
    NSLog(@"CreateEntryViewController: updateView"); 
    AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate]; 
    if (appDelegate.session.isOpen) { 
     NSString *urlAddress = @"http://google.com/"; 
     NSURL *url = [NSURL URLWithString:urlAddress]; 
     NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 
     [createEntryWebView loadRequest:requestObj]; 
    } 
} 

我可以確認所顯示的日誌消息,所以函數被調用,但我的UIWebView保持爲空 - 領先我相信它未正確鏈接到createEntryWebView。我已經在主ViewController(工作)中以相同的方式初始化它。

我是Objective C和iOS開發新手 - 有什麼我可能錯過了?代表?什麼東西?

由於提前, 卡斯帕

回答

2

有你加入UIWebViewDelegate上您的課?如果您的createEntryWebViewIBOutlet那麼您應該確保它已正確連接,並且IB中的委託屬性設置爲File's Owner。如果它不是IBOutlet,那麼請確保初始化並正確地將代理設置爲createEntryWebView

像這樣

createEntryWebView.delegate=self; 

找出如果你Webview是響應您的要求,從UIWebViewDelegate

– webView:shouldStartLoadWithRequest:navigationType: 
– webViewDidStartLoad: 
– webViewDidFinishLoad: 
– webView:didFailLoadWithError: 
+0

聽起來很有道理實現以下委託方法,謝謝。我明天有機會嘗試一下。 – 2013-02-22 16:29:09

+0

歡迎您,如果您認爲它對您有幫助,請接受答案! – nsgulliver 2013-02-22 16:30:23