UIScrollView中的UIWebView,如Apple Mail.app

时间:2015-02-20 19:03:29

标签: ios objective-c iphone uiwebview uiscrollview

我正在尝试创建一个类似于您在Apple iOS Mail.app中阅读电子邮件时看到的视图,您可以在视图中的任意位置缩小UIWebView的进出,以及顶部的标题大小相同。

此外,向上/向下滚动应滚动整个视图,而不仅仅是UIWebView。 向左和向右滚动仅向左/向右滚动UIWebView,它不会影响标题。

我已经尝试使用UITableView将UIWebView作为单元格内的视图或页眉/页脚视图,但我无法滚动和缩放无法正常工作。

我现在正在尝试将UIWebView放在UIScrollView中,并且似乎无法以这种方式使滚动正常工作,但它似乎比将UIWebView放在UITableViewCell中更好。

以下是我尝试创建的视图层次结构的简单表示:

UIScrollView
-- UIView (this is the "header" view)
-- UIWebView

我不确定是否需要禁用UIWebView上的滚动/缩放,或者如何处理容器UIScrollView或UIWebView内部scrollview的滚动事件。

提前感谢任何示例和建议!如果我遗漏任何细节,请告诉我。

2 个答案:

答案 0 :(得分:0)

只要您知道网页视图包含滚动视图,那么您就可以了,但我会建议以下内容并且它对我有用:

在滚动视图和其中的其他元素(包括Web视图)之间添加UIView,让iOS处理其余内容(手势和滚动事件)

UIScrollView
-- UIView (Just a wrapper as big as the content of the scroll view)
   -- UIView (this is the "header" view)
   -- UIWebView

答案 1 :(得分:0)

我不知道您是否已找到问题的解决方案,但我面临同样的问题,我想分享我的解决方案。

我实现了一个与本机邮件应用程序具有相同行为的自定义UIWebView。 也许这会为某人节省一些宝贵的时间:)我知道我希望在我挣扎的时候有这样的事情。

这是项目的链接:https://github.com/catalinaturlea/HeaderWebView

如果您发现任何问题或考虑任何改进,请告知我们。