我在UIScrollView
中有一个UIWebView
(scrollview包含另一个组件)
我尝试在界面生成器或编程的UIWebView
上启用多点触摸,但它仍然不能放大html,我是否需要在UIScrollView
和UIWebView
上同时处理放大?或者有什么我不需要设置的?
发布于 2010-05-30 04:46:11
要在UIWebView上工作,必须为任何收缩和缩放设置scalesPageToFit=YES
发布于 2011-06-23 13:34:44
好的,你需要做以上两件事,但也要做下面的事情。我在主视图中有一个web视图,但这不起作用。
<UIScrollViewDelegate>
,在界面生成器中将滚动视图委托拖到视图控制器中,然后实现viewForZoomingInScrollView
方法。这必须返回指向UIScrollView的指针(返回并创建web视图和滚动视图的属性-将它们链接到NIB中的视图控制器。在滚动视图上,转到属性检查器,设置最大和最小缩放因子(我将0.5设置为5.0,这很好用)。在Web视图上,在Attributes Inspector:发布于 2011-09-12 05:51:55
使用JavaScript,你可以控制缩放级别,尽管我发现的oly解决方案看起来并不流畅。
假设你在<head>
中有
<meta id="vp" name="viewport" content="width=768,initial-scale=1.0">
要缩放到4倍,但仍允许用户更改缩放,请更改内容两次:
var vp = document.getElementById('vp');
vp.content = "width=767,minimum-scale=4.0,maximum-scale=4.0,user-scalable=yes";
vp.content = "width=768,minimum-scale=0.25,maximum-scale=10.0,user-scalable=yes";
切换宽度是非常重要的-否则Mobile Safari会有严重的重绘错误(由于过度优化)。
您不能只是再次设置initial-scale
-它将在第二次被忽略。
https://stackoverflow.com/questions/2219685
复制相似问题