<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                **1、什么是UIWebView** UIWebView是iOS內置的瀏覽器控件。 系統自帶的Safari瀏覽器就是通過UIWebView實現的。 UIWebView不但能加載遠程的網頁資源,還能加載絕大部分的常見文件html\htm、pdf、doc、ppt、txt、mp4等等。 **2、常用屬性和方法** ~~~ @property(nonatomic) UIDataDetectorTypes dataDetectorTypes //需要進行檢測的數據類型 @property(nonatomic,readonly,getter=canGoBack) BOOL canGoBack;//是否能回退 @property(nonatomic,readonly,getter=canGoForward) BOOL canGoForward;//是否能前進 @property(nonatomic,readonly,getter=isLoading) BOOL loading;//是否正在加載中 @property(nonatomic) BOOL scalesPageToFit;//是否伸縮內容至適應屏幕當前尺寸 ~~~ ~~~ - (void)loadRequest:(NSURLRequest *)request;?//UIWebView常用的加載資源的方法 - (void)reload; //重新加載(刷新) - (void)stopLoading; //停止加載 - (void)goBack;//回退 - (void)goForward; //前進 ~~~ **3、UIWebViewDelegate代理方法** ~~~ //開始發送請求(加載數據)時調用這個方法 - (void)webViewDidStartLoad:(UIWebView *)webView; //請求完畢(加載數據完畢)時調用這個方法 - (void)webViewDidFinishLoad:(UIWebView *)webView; //請求錯誤時調用這個方法 - (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error; //UIWebView在發送請求之前,都會調用這個方法,如果返回NO,代表停止加載請求,返回YES,代表允許加載請求 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType; ~~~ **4、UIWebView Obj-c 和javascript交互** 4.1、Obj-c 操作javascript,dom加載完成后才操作。 ~~~ ?- (nullable NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script; ~~~ ~~~ //與js交換,操作dom NSString *hideDiv = @"document.getElementById('showText').style.display='none'"; ~~~ 4.2、javascript調用oc方法。原理是UIWebView攔截頁面請求,截取url判斷做響應處理。 ~~~ /** * 作用:一般用來攔截webView發出的所有請求(加載新的網頁) * 每當webView即將發送一個請求之前,會先調用這個方法 * * @param request 即將要發送的請求 * * @return YES :允許發送這個請求 NO :不允許發送這個請求,禁止加載這個請求 */ -(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{ // URL格式:協議頭://主機名/路徑 // request.URL.path : 獲得的僅僅是主機名(域名)后面的路徑 // request.URL.absoluteString : 獲得的是一個完整的URL字符串 // NSString *url = request.URL.absoluteString; // 如果在path中找不到@“baidu”這個字符串 // [path rangeOfString:@"baidu"].length == 0; // [path rangeOfString:@"baidu"].location == NSNotFound //if([urlStr rangeOfString:@"baidu.com"].length ==0){} NSString *url = request.URL.absoluteString; NSRange range = [url rangeOfString:@"zxh://"]; NSInteger loc = range.location; if (loc != NSNotFound) { //獲取方法名字 NSString *method = [url substringFromIndex:loc+ range.length]; // 轉成SEL SEL sel = NSSelectorFromString(method); [self performSelector:sel withObject:nil]; } return YES; } ~~~ **頁面代碼:** ~~~ <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <p></p> <div> <button onclick="fn_open_camera();">拍照</button> </div> <p></p> <div> <button onclick="fn_call();">打電話</button> </div> <div id="showText">dddddddd</div> <script> function fn_call() { // 調用OC中call方法 window.location.href = 'zxh://call'; } function fn_open_camera() { // 調用OC中openCamera方法 window.location.href = 'zxh://openCamera'; } </script> </body> </html> ~~~ **5.JavaScriptCore.framework iOS自帶框架實現與js交互,參考一下文章** [http://blog.csdn.net/lwjok2007/article/details/47058795](http://blog.csdn.net/lwjok2007/article/details/47058795) [http://justsee.iteye.com/blog/2036713](http://justsee.iteye.com/blog/2036713)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看