如何检测UIWebView是否正在缩放?

3

各位:

我可以通过将scalesPageToFit设置为YES来启用缩放功能。

但是,我如何知道UIWebView是否正在缩放?

有人知道吗?

提前致谢。


只是瞎猜,您能否在UIWebView中使用Pinch手势识别器做些什么? - Harry Lawrence
2个回答

3

已解决。

为 XXXViewController 新增一个属性,用于存储当前缩放比例(与初始比例相比)。

@property (nonatomic, assign) float zoomScale;

在适当的地方(例如 viewDidLoad?)设置缩放比例的初始值。

self.zoomScale = 1.0f;

当UIWebView中的ScrollView缩放比例发生变化时,更新缩放比例zoom。
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale{
    self.zoomScale *= scale;
}

如果zoomScale在一定范围内(接近1.0),则WebView不会进行缩放。

if(self.zoomScale - 1.0 < 0.001 && self.zoomScale - 1.0 > - 0.001) {
    // Not zooming
}

另外,如果你想改变比例尺,你应该

- (void)changeWebViewScale:(float)scale
{
    [self.webView.scrollView setZoomScale:scale / self.zoomScale animated:YES];
}

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接