iOS-UIWebView的一些用法(js調(diào)oc方法)

  • UIWebView加載遠(yuǎn)程url
    NSURL *url = [NSURL URLWithString:@"[http://www.baidu.com]"];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    [self.webView loadRequest:request];
  • UIWebView加載本地html

方法1

    //加載本地html
    NSString *basePath = [[NSBundle mainBundle] bundlePath];
    NSString *htmlPath = [basePath stringByAppendingPathComponent:@"test.html"];
    NSURL *url = [NSURL fileURLWithPath:htmlPath];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    [self.webView loadRequest:request];

方法2

    NSString *path = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"html"];
    NSURL *url = [NSURL URLWithString:path];
    self.webView.scalesPageToFit = YES;
    NSString *htmlString = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
    [self.webView loadHTMLString:htmlString baseURL:url];
  • JS調(diào)用OC方法

網(wǎng)上有開源框架,可以實現(xiàn)native 和 js直接互相調(diào)用 WebViewJavascriptBridge,如果只是需要簡單的調(diào)用的話,完全可以利用UIWebView的代理方法代替- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType,代碼如下:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    NSString *url = [[request URL] absoluteString];
//    NSURL *url = [request URL];
    
    NSLog(@"%@",url);
    //代碼中根據(jù)返回的URL或者scheme來判斷處理不同邏輯
    if ([url isEqualToString:@"demo://"])
    {
        DetailViewController *detail = [[DetailViewController alloc] init];
        [self.navigationController pushViewController:detail animated:YES];
    }
    return YES;
}

html代碼如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
<title>
測試網(wǎng)頁
</title>

<script type="text/javascript">
function demo()
{

<!--    alert(1212);-->
    window.location.href="demo://";
}
</script>

<style type="text/css">

/*div{

    border-radius: 30px;
    background-color: yellow;
    position: relative;
}*/
button{

    font-size: 40px;
    background-color: red;
    padding-top: 10px;
    margin: 30px;
    position: relative;
    left: 29%;
}

</style>
</head>

<body>
<div>
    </br></br></br></br></br></br></br>
<button onclick = "demo()" >按鈕事件</button>
</div>

</body>
</html>

成長的路上總是會遇到...

                                           2015.6.30
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • OS之UIWebView的使用 剛接觸IOS開發(fā)1年多,現(xiàn)在對于 混合式 移動端開發(fā)越來越流行,因為開發(fā)成本上、速...
    知之未道閱讀 1,711評論 0 4
  • IOS之UIWebView的使用 剛接觸IOS開發(fā)1年多,現(xiàn)在對于 混合式 移動端開發(fā)越來越流行,因為開發(fā)成本上、...
    學(xué)無止境666閱讀 46,008評論 5 53
  • iOS開發(fā)系列--網(wǎng)絡(luò)開發(fā) 概覽 大部分應(yīng)用程序都或多或少會牽扯到網(wǎng)絡(luò)開發(fā),例如說新浪微博、微信等,這些應(yīng)用本身可...
    lichengjin閱讀 4,037評論 2 7
  • http://www.cnblogs.com/mddblog/p/5281748.html 一、整體介紹 UIWe...
    F麥子閱讀 1,328評論 0 2
  • 孕29w,我說,我想去婺源看油菜花。 你說,好的。 3.17,周五下班,你帶上我,我們夜行近五百公里,去赴一場花的...
    王小姐要努力閱讀 845評論 4 10

友情鏈接更多精彩內(nèi)容