通過url加載(代理方式)
#import "ViewController.h"
@interface ViewController ()<UIWebViewDelegate>
@property (weak, nonatomic) IBOutlet UIWebView *webView;
@property (weak, nonatomic) IBOutlet UIBarButtonItem *backItem;
@property (weak, nonatomic) IBOutlet UIBarButtonItem *forwardItem;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.webView.delegate = self;
//通過一個url聪舒,加載一個網(wǎng)頁
[self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.reibang.com"]]];
//頁面內(nèi)容自適應整個屏幕大小
self.webView.scalesPageToFit = YES;
//設(shè)置邊距
self.webView.scrollView.contentInset = UIEdgeInsetsMake(20, 0, 0, 0);
}
//返回
- (IBAction)goBack:(UIBarButtonItem *)sender {
[self.webView goBack];
}
//前進
- (IBAction)goForward:(UIBarButtonItem *)sender {
[self.webView goForward];
}
//刷新
- (IBAction)refresh:(UIBarButtonItem *)sender {
[self.webView reload];
}
#pragma mark -
#pragma mark - <UIWebViewDelegate>
//已經(jīng)開始加載
-(void)webViewDidStartLoad:(UIWebView *)webView{
NSLog(@"開始加載了");
}
//已經(jīng)完成加載
- (void)webViewDidFinishLoad:(UIWebView *)webView{
//設(shè)置前進、后退按鈕的點擊
self.backItem.enabled = webView.canGoBack;
self.forwardItem.enabled = webView.canGoForward;
}
//加載出現(xiàn)錯誤
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{
self.backItem.enabled = webView.canGoBack;
self.forwardItem.enabled = webView.canGoForward;
}
/*
*每當webView即將發(fā)送請求之前戏仓,都會調(diào)用這個方法
*返回YES:允許加載這個請求
*返回NO:禁止加載這個請求
*/
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{
if([request.URL.absoluteString containsString:@"2015"]) return NO;
return YES;
}
storyboard.png
通過本地路徑加載
//[self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:@"/Users/mac1/Desktop/IOS.pdf"]]];
通過HTML字符串加載
//[self.webView loadHTMLString:@"<html><body><div style=\"color: red; font-size:40px; \">簡書</div></body></html>" baseURL:nil];
通過html文件加載
// 檢測各種特殊的字符串:比如電話赏殃、網(wǎng)站等仁热,效果為加下劃線,長按有響應的操作
self.webView.dataDetectorTypes = UIDataDetectorTypeAll;
[self.webView loadRequest:[NSURLRequest requestWithURL:[[NSBundle mainBundle] URLForResource:@"test" withExtension:@"html"]]];
test.html.png