zoukankan      html  css  js  c++  java
  • UIWebView的使用,简单浏览器的实现



    #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

  • 相关阅读:
    vim官方教程
    vim命令
    vim设置——/home/.vimrc设置
    Django中静态及媒体文件的引用设置
    博客园特效,拖动鼠标吸附线条
    机器学习工具Octave安装(Win10环境)
    【原】Coursera—Andrew Ng斯坦福机器学习(0)——课程地址和软件下载
    Anaconda 安装教程(Win10环境) Tensorflow安装
    博客园 设置各级标题样式
    Android WebView 捕捉点击的URL中的信息
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5347544.html
Copyright © 2011-2022 走看看