iOS开发里面,UIWebView还算是比较常用的吧,还是把它主要方法弄出来。
如果需要Delegate UIWebView的话,需要在.h 文件里面对其进行必要的声明。这时候Outlet就不能够拖到.m文件里面了。
需要把它弄到.h 文件里面
// // mcViewController.h // test02 // // Created by Chen Junlin on 14-6-16. // Copyright (c) 2014年 me.masterchan. All rights reserved. // #import <UIKit/UIKit.h> @interface mcViewController : UIViewController<UIWebViewDelegate>{} @property (weak, nonatomic) IBOutlet UIWebView *mywebview; @end
这样做以后,就可以在viewDidLoad 里面设定delegate了
- (void)viewDidLoad{ [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. [_mywebview setDelegate:self]; }
往WebView里面添加内容的方法有很多,我们可以直接在程序里面生成内容并且直接添加到里面去,loadHTMLString数据格式NSString , baseURL数据格式 NSURL
[_mywebview loadHTMLString:@"网页内容" baseURL:[NSURL URLWithString: @"默认网址"]];
当webView 绘制完成的时候会触发
- (void)webViewDidFinishLoad:(UIWebView *)webView{ NSLog(@"Finish"); }
我们还可以截取他的转跳请求
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { NSLog(@"test"); if ( navigationType == UIWebViewNavigationTypeLinkClicked ) { //[[UIApplication sharedApplication] openURL:[request URL]]; NSLog(@"%@",[request URL]); return NO; } return YES; }