如何检测UIWebView是否缩放?

时间:2013-10-29 11:25:24

标签: uiwebview zooming

每一个人:

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

有谁知道吗?

提前致谢。

2 个答案:

答案 0 :(得分:3)

解决。

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

@property (nonatomic, assign) float zoomScale;

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

self.zoomScale = 1.0f;

更改ScrollView的比例(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];
}

答案 1 :(得分:0)

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

在我的情况下,我必须添加scrolview var和scrolviewdelegate,然后将scrolview设置为webview's scrolview,以便能够调用{{ 1}}方法