iOS開發 UIWebView載入本地和網路資料

2022-02-04 22:08:48 字數 2906 閱讀 9955

uiwebview是內建的瀏覽器控制項,可以用它來瀏覽網頁、開啟文件,關於瀏覽網頁榜樣可以參考uc,手機必備瀏覽器,至於文件瀏覽的手機很多圖書閱讀軟體,uiwebview是乙個混合體,具體的功能控制項內建的,實現一些基本的功能。uiwebview可以檢視html網頁,pdf檔案,docx檔案,txt檔案檔案,系統自帶的safari就是uiwebview實現的。

頁面布局很簡單就是乙個文字框,乙個按鈕,乙個uiwebview,頁面布局如下:

如果想簡單一點的話,其實用uiwebview也行,不過需要先準備一些文字資料,具體如下:

①直接拼接html,用uiwebview顯示,viewdidload中新增**:

//直接載入html字串

②載入本地的html網頁,book.html中**:

少年維特之煩惱-歌德

③載入本地的pdf檔案,viewdidload**:

載入pdf的第二種方式:

nsstring *path = [[nsbundle mainbundle]pathforresource:@"book.pdf" oftype:nil];

//以二進位制的形式載入資料

nsdata *data = [nsdata datawithcontentsoffile:path];

④載入本地txt檔案,viewdidload**如下:

//載入txt

nsurl *url = [[nsbundle mainbundle]urlforresource:@"book.txt" withextension:nil];

//設定url

⑤載入word,viewdidload**如下:

//載入word

nsurl *url = [[nsbundle mainbundle]urlforresource:@"book.docx" withextension:nil];

//設定載入url

⑥載入網路資料,跳轉按鈕事件中實現如下:

⑦設定委託,在不同的階段處理資料,

實現uiwebviewdelegate,設定自己本身為委託物件;

[self.webview setdelegate:self];
常用的三個方法:

//載入開始

- (void)webviewdidstartload:(uiwebview *)webview

//載入完成

-(void)webviewdidfinishload:(uiwebview *)webview

//載入出錯

- (void)webview:(uiwebview *)webview didfailloadwitherror:(nserror *)error

iOS開發UIWebView快取

最近做了uiwebview的快取,用了兩種方式去實現 第一種使用的是重寫uiwebview的urlcache方法,在urlcache方法中請求網頁資料,儲存網頁資料至本地磁碟。使用rncachingurlprotocol協議 優點 不會像第一種方式會在每次使用快取的時候產生兩個相同的請求,缺點 會快...

ios開發使用UIWebView顯示多種文件

使用uiwebview顯示多種文件 除了html的內容,uiwebview還可以顯示多種型別的文件 包括以下的型別 excel xls keynote key.zip numbers numbers.zip pages pages.zip pdf pdf powerpoint ppt word do...

ios開發使用UIWebView顯示多種文件

使用uiwebview顯示多種文件 除了html的內容,uiwebview還可以顯示多種型別的文件 包括以下的型別 excel xls keynote key.zip numbers numbers.zip pages pages.zip pdf pdf powerpoint ppt word do...