3

每个人:

我可以通过将 scalesPageToFit 设置为 YES 来启用缩放。但是,我怎么知道 UIWebView 是否在缩放呢?

有人知道吗?

提前致谢。

4

2 回答 2

3

解决。

向 XXXViewController 添加一个新属性以存储当前缩放比例(与初始比例相比)

@property (nonatomic, assign) float zoomScale;

在某个适当的位置设置 zoomScale 的初始值(例如 viewDidLoad?)

self.zoomScale = 1.0f;

ScrollView 的 scale 改变时更新缩放比例(UIWebView 的 ScrollView)

- (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];
}
于 2013-10-30T06:14:19.983 回答
0

http://www.seeques.com/19639347/how-to-detect-zoom-scale-of-uiwebview.html

就我而言,我必须添加一个scrolviewvar 和scrolviewdelegate,然后将其设置scrolviewwebview's scrolview能够调用scrolviewdidendzooming方法

于 2014-04-11T15:18:05.213 回答