iOS加載本地HTML文件

先將文件引入到工程中(引入文件的兩種方式介紹),再獲取html文件路徑,加載html文件。因?yàn)橐胛募袃煞N方式,所以加載文件的方式也有兩種。加載本地html文件主推第二種方式。如果想了解兩種方式的區(qū)別請看引入文件的兩種方式介紹。

下面請看兩種加載html文件的方式

方法一:

  • 文件引入方式


    文件加入方式一.png
  • 加載html

// 獲取路徑
    NSString * path = [[NSBundle mainBundle] pathForResource:@"文件名" ofType:@"html"];
    // 創(chuàng)建URL
    NSURL * url = [NSURL fileURLWithPath:path];
    // 創(chuàng)建NSURLRequest
    NSURLRequest * request = [NSURLRequest requestWithURL:url];
    // 加載
    [webView loadRequest:request];
  • 這種方法是加載通過Creat groups方式添加的文件。這里需要注意的是前端代碼里在引入資源時,代碼里所有的資源路徑(引入圖片、js、css、html等等)都不要,直接把前面的路徑都刪了,只需要文件名就可以了。否則在引入資源時Xcode會找不到,比如在頁面里某個地方有圖片,但你Xcode本地前端代碼里引入圖片用的是路徑,那么圖片就會找不到,在頁面上就不會顯示圖片。
  • 例如,需將路徑刪除,只需文件名就可以了


    圖片路徑.png
文件路徑.png

這種方式引入文件,如果有相同的文件名,在項(xiàng)目編譯的時候是會報(bào)文件重復(fù)的錯誤

在這里推薦使用下面這種方法!

方法二:

  • 文件引入


    文件加入方式二.png
  • 加載html(這里需要注意加載的html文件的文件路徑)

NSString * path = [[NSBundle mainBundle] pathForResource:@"login" ofType:@"html" inDirectory:@"AppWeb/view"];
    NSURL * url = [NSURL URLWithString:path];
    NSURLRequest * request = [NSURLRequest requestWithURL:url];
    [webView loadRequest:request];

NSString * path = [[NSBundle mainBundle] pathForResource:@"login" ofType:@"html" inDirectory:@"AppWeb/view"];
這個方法里
login:文件名
html:文件名后綴
AppWeb/view:文件路徑

122111.png

  • 這種方法是加載通過Creat folder reference方式添加的文件

使用第二種方法就不用去改前端代碼里的路徑了。但需要注意文件的引入方式!

兩種引入文件方式的區(qū)別請看Xcode引入文件的兩種方式

  • 如果加載的不是HTML文件而是HTML代碼,那么可以使用下面這個方法
NSString * str = @"<div class=\"logo\"><img src=\"logo.png\" /> 協(xié)同管理</div>";
    [webView loadHTMLString:str baseURL:nil];

str就是你的HTML代碼,需要注意的是字符串里雙引號的處理(在雙引號前面加\)

覺得有用麻煩給??,您的??就是小編的動力

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

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