13
|
choonkeat · 技术社区 · 14 年前 |
![]() |
1
14
我找到了对我有用的东西。问题是,当uiWebView改变其方向时,Web内容将被缩放以适应视区。但是ScrollView子视图的ZoomScale参数没有正确更新(也没有更新MinimumZoomScale或MaximumZoomScale
然后我们需要手动在
希望这有帮助! |
![]() |
2
4
我试过用m penades来解决这个问题,这似乎对我也有帮助。 我遇到的唯一问题是,在3GS上运行时,旋转不太平稳。 因此,我现在使用一种不同的方法:
最好的问候,
|
![]() |
3
4
尝试此代码,它会显著更改缩放级别(1.01),以允许uiwebview在横向模式下增加内容大小。 findscrollViewInsideView:已添加方法以支持ios4 |
![]() |
4
1
我发布这篇文章是因为我也面临同样的问题,现在我关注的是
1)为此,我设置了捏手势,这样当用户倾斜uiwebview时,可以检查uiwebview的缩放大小。
//一个这个请导入
返回“是”保证允许同时识别。返回“否”并不保证阻止同时识别,因为其他手势的代表可能返回“是”。
如果用户HASE在这种情况下收缩/缩小Web视图,只需设置缩放系数。 这样WebView就可以随着_或内容的更改而调整其内容大小。
这对于用户倾斜uiwebview也非常有效。 |
![]() |
5
0
我有解决这个问题的办法,但我得说我不太喜欢这个问题。它工作得很好,但解决方案实际上会导致另一个问题。我有一个解决第二个问题的方法,但这需要一些努力。 请记住,由于os3.2或ios4(不确定哪个)uiwebview的直接子视图现在是uiscrollview而不是uiscroller,所以我们可以用它做更多的事情。此外,由于访问视图的子视图不是私有操作,也不使用作为文档视图的子视图,因此我们可以在不违反规则的情况下对uiWebView进行大量操作。 首先,我们需要从uiWebView获取uiScrollView:
现在,我们需要更改此ScrollView的委托,以便可以覆盖ScrollView委托调用(这可能是由于此解决方案而导致的第二个bug的原因,稍后我将与大家分享):
现在,如果您在这一点上尝试,缩放将被破坏。我们需要实现一个uiScrollViewDelegate方法来修复它。添加:
WebBrowserView实际上是一个UIWebBrowserView,但它不是一个文档化的类,所以我们只将其作为一个UIView来处理。 现在运行应用程序,放大然后缩小网页。旋转,应正确显示。 这确实会导致一个相当大的bug,这可能比原来的更糟。 如果你放大然后旋转,你将失去滚动能力,但你的视图将仍然放大。这是完成整件事的方法。 首先,我们需要跟踪一些数字,并定义一个标志: 我在我的H文件中定义了这些:
您可能认为您可以从uiscrollview中获取这些数字,但当您需要它们时,它们会发生变化,因此我们需要将它们存储在其他地方。 我们需要使用另一个委托方法:
现在我感觉很乱。 我们需要跟踪旋转,因此您需要将其添加到您的viewdidload、loadview或用于注册通知的任何方法中:
并创建此方法:
所以现在只要旋转WebViewOrientationChange就会被调用。PerformSelector延迟0.0秒的原因是我们希望在下一个运行循环上调用AdjustWithZoomData。如果您直接调用它,那么AdjustWithZoomData将根据上一个方向进行调整。 以下是缩放数据调整方法:
就是这样!现在,当旋转时,它将保持缩放,并大致保持正确的偏移。如果有人想计算如何得到准确的偏移量,那就去做吧! |
![]() |
6
0
我自己也在调查这件事,发现了更多的信息: 更改缩放时出现的问题:
例如,如果当前宽度为1024,并且您希望在横向上从1缩放到1.5,则可以:
|
![]() |
7
0
所以很明显,我最终没有使用m penades的解决方案(而且忘了更新这篇文章!对不起)。 我所做的就是调整整个文档的大小(并更改字体大小以保持大小成比例)。这显然解决了问题。 但是,我的uiwebview只用于从iOS文件系统加载我自己的HTML&css—如果您正在构建通用的Web浏览器,那么这个技巧可能不会很好地发挥作用。 视图控制器.m
和App.CSS
|
![]() |
8
0
在旋转时,尝试将滚动视图缩放比例设置为0。 请看我的完整答案: UIWebView content not adjusted to new frame after rotation |
![]() |
agupta · Java摆动自动调整图片大小 7 年前 |
![]() |
Austin · jQuery Mobile在小屏幕上查看时更改表单宽度? 10 年前 |
![]() |
Twinone · jQuery调整其父项大小后不工作的宽度(百分比) 12 年前 |