And*_*dre 9 iphone zoom reset uiwebview uiscrollview
过去一周我一直在寻找这个问题的答案.
我在UIScrollView中有一个UIWebView.一切都很好,但我希望UIWebView的内容在方向改变时重置其缩放.
在UIWebView内部的HTML中,我将视口的宽度(带元标记)设置为"设备宽度",然后在Obj-C端设置scalesPagesToFit = YES;
我试过用javascript重置缩放; 通过在运行时替换元标记; 重装; 访问UIWebView内部的UIScrollView; 等等...
但没有成功.
你们中的任何人都知道一个解决方法吗?
我唯一可以想到的是每次我们改变方向时重新创建UIWebViews,但这会使它们在渲染内容时闪现白色,这看起来很糟糕:(
有什么想法吗?
非常感谢,安德烈
我只是猜测这里并没有尝试,但AFAIK UIWebView有一个UIScrollView子项.所以应该能够做到:
for (UIScrollView *scroll in [myWebView subviews]) {
// Make sure it really is a scroll view and reset the zoom scale.
if ([scroll respondsToSelector:@selector(setZoomScale:)])
[scroll setZoomScale:1.0];
}
Run Code Online (Sandbox Code Playgroud)