2012-12-12 21 views
-2

.H爲什麼我的Web視圖失敗委託不能正常工作?

IBOutlet UIWebView *webview; 

.M

- (void)viewDidLoad { 
    [webview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://blabla.com"]]]; 
} 

- (void)webView:(UIWebView *)webViewfail didFailLoadWithError:(NSError *)error { 
    if([webViewfail isEqual:webview]) { 
     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Connection Failed" 
                 message:@"Check your Internet connection before refreshing." 
                 delegate:self 
               cancelButtonTitle:@"OK" 
               otherButtonTitles:nil]; 
     [alert show]; 
    } 
} 

我不知道我做錯了什麼,我試圖使它出現,但掀起的互聯網連接。任何提示或建議將會有所幫助。

+1

你有web視圖的委託設置爲'self'? – 2012-12-12 17:35:23

+0

以防萬一 - IBOutlet連接到XIB中的對象? –

回答

0

確保你已經在接口構建器中連接了委託(如果這是你正在使用的)。您可以通過選擇Web視圖並將其拖動(同時按住控件)到視圖控制器/文件的所有者,然後選擇委託(當您釋放鼠標時彈出)。

或者,你可以連接你的代碼代表在您的viewDidLoad方法,像這樣:

[webView setDelegate:self] 

確保您的視圖控制器通過在.H添加符合UIWebViewDelegate協議

@interface MyViewController : UIViewController <UIWebViewDelegate> 

祝你好運:)

0

檢查:

  • 確保包含引用方法的對象確實是Web視圖的delegate
  • 給網頁瀏覽的網址請求一個非常短的timeoutInterval
0

試試這個吧:

在喲烏爾ViewController.h

@interface ViewController : UIViewController <UIWebViewDelegate> 

而且在ViewController.m下面的[超級viewDidLoad中]補充:

self.webView.Delegate = self;