您的位置:首页 > 移动开发

UIWebView的使用,简单浏览器的实现

2015-06-26 11:28 525 查看
#import "ViewController.h"

@interface ViewController () <UIWebViewDelegate>

@property(nonatomic,weak)UIWebView* web;

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

[self _setTextField];

[self _loadWebView];

}

#pragma mark - 设置输入框

- (void)_setTextField{

self.tf.clearButtonMode=UITextFieldViewModeWhileEditing;

}

#pragma mark - 加载WebView

- (void)_loadWebView{

UIWebView* web=[[UIWebView alloc] init];

web.frame=CGRectMake(0,self.view.frame.size.height,self.view.frame.size.width,self.view.frame.size.height-42 );

self.web=web;

web.delegate=self;

[self.view addSubview:web];

}

#pragma mark - 放弃第一响应

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{

[self.tf resignFirstResponder];

}

#pragma mark - Action

- (IBAction)backAction:(id)sender {

[self.web goBack];

// self.web.frame=CGRectMake(0,self.view.frame.size.height,self.view.frame.size.width,self.view.frame.size.height-42 );

}

- (IBAction)forwardAction:(id)sender {

[self.web goForward];

self.web.frame=CGRectMake(0,20,self.view.frame.size.width,self.view.frame.size.height-50);

}

- (IBAction)undoAction:(id)sender {

[self.web stopLoading];

}

- (IBAction)refreshAction:(id)sender {

[self.web reload];

}

- (IBAction)searchAction:(id)sender {

[self.tf resignFirstResponder];

self.web.frame=CGRectMake(0,20,self.view.frame.size.width,self.view.frame.size.height-60);

[self _sendRequest];

}

#pragma mark - UIWebViewDelegate

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{

return YES;

}

- (void)webViewDidStartLoad:(UIWebView *)webView{

}

- (void)webViewDidFinishLoad:(UIWebView *)webView{

// NSLog(@"%d===%d",[webView canGoBack],[webView canGoForward]);

self.backBt.enabled=[webView canGoBack];

self.forwardBt.enabled=[webView canGoForward];

self.refresh.enabled=([webView canGoBack] ||[webView canGoForward]);

}

- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{

NSLog(@"%@",error);

}

- (void)_sendRequest{

//http://www.baidu.com

NSURL* url=[NSURL URLWithString:self.tf.text];

NSURLRequest* request=[NSURLRequest requestWithURL:url];

[self.web loadRequest:request];

}

@end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: