UIWebView头尾插入自定义View

2017-01-12  本文已影响0人  李华光

** 前言 **

最近在做邮箱,我们知道邮箱的内容实际上就是html,所以我们可以用webView来显示邮件内容。但是我们不仅要显示邮件内容,还需要显示邮件主题、收件人等信息,也需要在价位显示附件等信息。所以我们需要邮件头部信息的View,邮件内容的View,附件的View。

一、分析UIWebView

通过分析UIWebView,它包含三个subView:两个UIImageView和一个UIWebBrowserViewUIImageView主要用于实现上下的边界后面的阴影效果,如果你想把这些阴影效果去掉,可以使这些UIImageView的对象设置为hidden隐藏掉。UIWebBrowserView便是渲染网页内容的地方了。

当网页在加载的过程中,UIWebBrowserView会动态的根据网页内容的高度去调整ScrollView的ContentSize。

二、实现headerView和footerView

办法一:

可以通过设webview里scrollView的contentInset,在头部和尾部留好自定义view的空间,再把view添加进来。

把这些行为封装了起来做成一个扩展的UIWebView,主要解决的问题是:

1.直接通过设headerView和footerView完成头尾view的插入。

2.webView滚动和缩放时自动调整headerView和footerView的位置,使之看起来自然。

3.提供接口实现头部高度改变时进行动画

这里需要注意的是:设置contentInset后,webview顶点的Y坐标不是0,而是小于0的一个数(负的headerView的高度) 。

封装好的Demo

办法二:

待续。。。

参考

上一篇下一篇

猜你喜欢

热点阅读