前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >UIWebView的使用,简单浏览器的实现

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

原创
作者头像
大师级码师
修改2021-11-01 09:27:20
3160
修改2021-11-01 09:27:20
举报
文章被收录于专栏:大师级码师大师级码师
代码语言:javascript
复制
#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</pre> 

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档