使用Xcode 5,iOS 7。
将web视图的框架从(0,45,320,568 - 20 - 45 - 49)更改为(0,0,320,568 - 20)或将其更改回后会出现问题,其superview是具有框架(0、20、320、548)到应用程序窗口的rootViewController的容器。
当将web视图的框架更改为(0、45、320、568 - 20 - 45 - 49)到其容器时,web视图在65到(568 - 49)垂直区域内,但其滚动条从65滚动到大约web视图的中间。
发布于 2013-11-05 16:11:42
解决方案
最后,我给出了这个:
[[[_webViewContainer webView] scrollView] setScrollIndicatorInsets:UIEdgeInsetsMake(0, 0, 0, 0)];每当一个新的网页被加载到web视图中,也就是这个UIWebViewDelegate协议方法的开始。
-(BOOL)webView:shouldStartLoadWithRequest:navigationType因此,即使打开自动布局,我们也可以强制滚动视图( web视图的属性)为滚动指示器提供正确的滚动范围。
可能原因
意外行为的原因可以从以下几个方面看出:
UIEdgeInsets tempEdgeInsets;
tempEdgeInsets = [[_webView scrollView] scrollIndicatorInsets];
NSLog(@"scroll view edge insets = %f, %f, %f, %f", tempEdgeInsets.top, tempEdgeInsets.bottom, tempEdgeInsets.left, tempEdgeInsets.right);每次由于自动布局的原因,web视图框架的变化都会给520提供一个520。
https://stackoverflow.com/questions/19785071
复制相似问题