** 前言 **
最近在做郵箱,我們知道郵箱的內(nèi)容實際上就是html,所以我們可以用webView來顯示郵件內(nèi)容。但是我們不僅要顯示郵件內(nèi)容,還需要顯示郵件主題、收件人等信息,也需要在價位顯示附件等信息。所以我們需要郵件頭部信息的View,郵件內(nèi)容的View,附件的View。
一、分析UIWebView
通過分析UIWebView,它包含三個subView:兩個UIImageView和一個UIWebBrowserView。UIImageView主要用于實現(xiàn)上下的邊界后面的陰影效果,如果你想把這些陰影效果去掉,可以使這些UIImageView的對象設(shè)置為hidden隱藏掉。UIWebBrowserView便是渲染網(wǎng)頁內(nèi)容的地方了。
當(dāng)網(wǎng)頁在加載的過程中,UIWebBrowserView會動態(tài)的根據(jù)網(wǎng)頁內(nèi)容的高度去調(diào)整ScrollView的ContentSize。
二、實現(xiàn)headerView和footerView
辦法一:
可以通過設(shè)webview里scrollView的contentInset,在頭部和尾部留好自定義view的空間,再把view添加進(jìn)來。
把這些行為封裝了起來做成一個擴展的UIWebView,主要解決的問題是:
1.直接通過設(shè)headerView和footerView完成頭尾view的插入。
2.webView滾動和縮放時自動調(diào)整headerView和footerView的位置,使之看起來自然。
3.提供接口實現(xiàn)頭部高度改變時進(jìn)行動畫
這里需要注意的是:設(shè)置contentInset后,webview頂點的Y坐標(biāo)不是0,而是小于0的一個數(shù)(負(fù)的headerView的高度) 。
封裝好的Demo
辦法二:
待續(xù)。。。