我在 UIWebView 中显示一系列平铺图像,并希望以编程方式设置 UIWebview 的初始缩放和查看位置。
如何做到这一点?
将 UIWebView 的属性 scalesPageToFit 设置为 YES。然后网页被缩放以适应用户可以放大和缩小。
你可以使用这个:
for (UIView *subview in webView.subviews) {
if ([subview isKindOfClass:[UIScrollView class]]) {
((UIScrollView *)subview).bounces = NO;
[((UIScrollView *)subview) setZoomScale:10.5f animated:YES];
}
}
它可能是您问题的解决方案。
注意:此答案来自 2009 年。请参阅更文明时代的更好解决方案之一。
UIScrollView 的程序化滚动现在是一个已解决的问题。我在github.com/andreyvit/ScrollingMadness/详细讨论了 UIScrollView 缩放的工作原理、示例项目和 ZoomScrollView 类,它封装了所需的缩放魔法。
所以可能你应该像安迪建议的那样把你的图像放在 UIScrollView 中。
看起来没有记录在案的方式来做你想做的事。另一种只能解决一半问题的方法是使用 UIScrollView。您可以将 UIImageViews 放在 UIScrollView 中,然后滚动到滚动视图中的任何位置。但是,这不允许您以编程方式缩放视图。如果您认为应该将其添加到 SDK 文件中,请查看雷达:http ://bugreport.apple.com/
for (id subview in webview)
if ([[subview class] isSubclassOfClass: [UIScrollView class]]) {
((UIScrollView *)subview).bounces = NO;
}
}
尝试使用此滚动视图。