我認爲用UIWebView(和delegate = self)對每個viewController實現完全相同的方法並不聰明。所以試圖設置所有UIWebView的通用加載方法。但它沒有奏效。 用類別實現是否是錯誤的?按類別常見的webViewDidStartLoad
的UIWebView + Loading.m
-(void)webViewDidStartLoad:(UIWebView*)webView
{
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];
}
ViewController.h
@interface ViewController : UIViewController <UIWebViewDelegate>
ViewController.m
#import "UIWebView+Loading.h"
//abbr...
-(void)viewWillAppear:(BOOL)animated
{
UIWebView *someWebView = [[UIWebView alloc] init];
someWebView.delegate = self;
//and HTTP request
NSURLRequest *req = (abbr);
[someWebView loadRequest:req];
}
我明白用UIWebView的類別是錯誤的。我該如何實現它?我認爲使用UIWebView(和delegate = self)對每個viewController實現完全相同的方法並不聰明。我會閱讀委派模式,謝謝。 – tosin
如果你有更多的包含UIWebView的視圖控制器,你可以爲它們創建一個超類(UIViewControllerWithWebView)並在其中實現UIWebViewDelegate方法。 –