2010-09-02 103 views
5

我很难试图对UIWebView调整大小进行动画制作,只是不知道要去哪里。动画调整UIWebView的大小

这是我想要完成的:我有两个视图,一个在另一个之上(想象两个方块,一个在另一个的顶部)。顶视图是UIWebView,最下面的一个将被称为一般UIView(我对底部没有任何问题)。每当新内容加载时我都会调整两个视图。我也有一个按钮,应该隐藏底部视图或显示它,这取决于它以前的状态。

这就是问题发生的地方。当隐藏底部视图时,按下按钮将放大框架并减少框架。没关系。但是,如果正在显示底部视图和按钮被按下时,UIWebView框架将变得更大,而有一些问题吧:

  • 如果UIWebView滚动一路底部,它“在下来之前跳起来(变大);

  • 如果UIWebView一直滚动到顶部,只要有足够的内容滚动到底部视图后面,就会如预期般下降。

一般情况下,我所了解到的情况是,如果内容尚未后面底部的观点是比调整发生的量大,没有跳跃发生。否则,它会。

我做了大量的研究,asked a previous question,所以我假设这是延迟加载UIWebView的结果。这种“跳跃”发生时会自动调整大小(显示所有内容,即使其中一些内容不在屏幕外),然后向下移动。否则,它会同时扩展和加载新内容,需要更多的处理器能力。

我已经尝试过帧,边界和中心,到目前为止没有任何地方。我的假设是否正确?是否没有简单的方法来调整方式来调整UIWebView的大小以便它只能向下(当变大时)并保持底部滚动?

从理论上讲,我认为正确的做法是让UIWebView大一些,保持目前的底部位置,然后动画降低。这样,顶级内容将被加载。但我没有取得任何成功。

如果有人有任何这方面的经验,请分享。并且非常感谢。

回答

0

如果滚动到足够高的网页底部,请尝试向下动画化网页视图而不更改其大小,然后更改网页视图高度,以便顶部返回到应该出现的位置。当Web视图以某种模式向下移动时,您可以临时填充剩下的空间。

+0

这对用户来说不会很漂亮......即使如此,我也不知道有什么方法可以检测UIWebView是否足够滚动。我已经尝试过使用javascript(pageoffset和total scroll height),但也没有成功。我需要一种方法来获得底部的偏移量,而不是顶部(这是页面偏移返回的)。 – 2010-09-02 20:19:57