zoukankan      html  css  js  c++  java
  • webview使用

    #pragma mark 加载远程的HTML页面
    - (void)loadRemoteHTML {
        NSURL *url = [NSURL URLWithString:@"http://localhost:8080/MJServer/"];
        
        self.webView.delegate = self;
        [self.webView loadRequest:[NSURLRequest requestWithURL:url]];
    }

    #pragma mark 加载其他文件
    - (void)loadRemoteTxt {
        NSURL *url = [NSURL URLWithString:@"http://localhost:8080/MJServer/abc.txt"];
        
        self.webView.delegate = self;
        [self.webView loadRequest:[NSURLRequest requestWithURL:url]];
    }

    #pragma mark 加载PDF文件
    - (void)loadLocalPDF {
        //[self.webView loadData:<#(NSData *)#> MIMEType:<#(NSString *)#> textEncodingName:<#(NSString *)#> baseURL:<#(NSURL *)#>];
        
        NSURL *url = [NSURL fileURLWithPath:@"/Users/apple/Desktop/第10章-网络.pdf"];
        
        self.webView.delegate = self;
        [self.webView loadRequest:[NSURLRequest requestWithURL:url]];
    }

    #pragma mark 加载HTML字符串
    - (void)loadHTMLString {
        NSURL *url = [NSURL fileURLWithPath:@"/Users/apple/Pictures"];
        [self.webView loadHTMLString:@"<html><body><img src='lufy.png'></body></html>" baseURL:url];
    }

    #pragma mark - webview代理方法
    - (void)webViewDidStartLoad:(UIWebView *)webView {
        NSLog(@"开始加载页面");
        [MBProgressHUD showMessag:@"哥正在帮你加载..." toView:self.view];
    }

    - (void)webViewDidFinishLoad:(UIWebView *)webView {
        NSLog(@"页面加载完毕");
        [MBProgressHUD hideHUDForView:self.view animated:YES];
        
        self.backItem.enabled = self.webView.canGoBack;
        self.forawrdItem.enabled = self.webView.canGoForward;
        
        self.titleItem.title = [self.webView stringByEvaluatingJavaScriptFromString:@"document.title"];
        
        //[self.webView stringByEvaluatingJavaScriptFromString:@"fn();"];
    }


    #pragma mark webview每次加载之前都会调用这个方法
    // 如果返回NO,代表不允许加载这个请求
    - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
        // 说明协议头是ios
        if ([@"ios" isEqualToString:request.URL.scheme]) {
            NSString *url = request.URL.absoluteString;
            NSRange range = [url rangeOfString:@":"];
            NSString *method = [request.URL.absoluteString substringFromIndex:range.location + 1];
            
            SEL selector = NSSelectorFromString(method);
            
            if ([self respondsToSelector:selector]) {
                [self performSelector:selector];
            }
            
            return NO;
        }
        
        return YES;
    }

    #pragma mark - 提供一个接口方法给JS调用
    - (void)openCamera {
        NSLog(@"打开了照相机");
    }

    - (void)call {
        NSLog(@"打电话");
    }

    #pragma mark - 按钮方法
    #pragma mark 前进
    - (void)forawrd {
        [self.webView goForward];
    }
    #pragma mark 后退
    - (void)back {
        [self.webView goBack];
    }

     
  • 相关阅读:
    [Ceoi2016|BZOJ4936] Match
    下载/拷贝下来的压缩包打开内容为空解决方案
    [POI2012]OKR-A Horrible Poem
    [SNOI2017]礼物
    LuoguP3398 仓鼠找sugar
    转:看图说话Image Caption之评价指标、NIC(Neural Image Caption)模型和attention
    转:Cascade R-CNN,一个使你的检测更加准确的网络
    图像理解之物体检测object detection,模型rcnn/fastrcnn/fasterrcnn原理及概念
    深度残差网络
    转:图像分类、物体检测、物体分割、实例分割、语义分割
  • 原文地址:https://www.cnblogs.com/wangshengl9263/p/3052819.html
Copyright © 2011-2022 走看看