2014-01-13 64 views
3

我有這段代碼。對WebView的引用是我放在頁面上的一個WebView元素。iOS - webview上的警告:從不兼容的類型分配給'id <UIWebViewDelegate>'

我有這樣的代碼:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view. 
    self.view.backgroundColor = [UIColor colorWithWhite:0.859 alpha:1.000]; 
    theWebView.delegate = self; 
} 

我得到這一行警告:

self.view.backgroundColor = [UIColor colorWithWhite:0.859 alpha:1.000]; 

說:

Assigning to 'id<UIWebViewDelegate>' from incompatible type 'BalanceSheetController *const_strong' 

會有人知道爲什麼會這樣警告會發生什麼?沒有這一行,點擊UIWebView上的鏈接就不會被識別。

謝謝!

回答

8

您的視圖控制器很可能不會實現協議的UIWebViewDelegate 。即使它有方法,你可能也沒有在你的接口聲明中使用它。它應該看起來像:

@interface YourViewController : UIViewController <UIWebViewDelegate> 
+0

是的,我的.h文件中目前聲明如下:@接口BalanceSheetController:UIViewController的......你會知道是什麼含義,如果有任何的?如果我將其改變爲如何顯示,會有什麼影響?謝謝! – Genadinik

+0

我建議你閱讀協議和委託 - 因爲在Cocoa中有很多使用委託模式,你會發現它很有用。 https://developer.apple.com/library/ios/documentation/cocoa/conceptual/ProgrammingWithObjectiveC/WorkingwithProtocols/WorkingwithProtocols.html –

相關問題