3

我做了一个简单的测试项目来显示问题:有一个 imageview 包含在 scrollview 视图 -> scrollview -> imageview

scrollview 的内容大小与 imageview size = (AllWidth, AllHeight) 相同。

问题是,如果滚动视图完全按宽度(scrollView.zoomScale = 320.0/AllWidth;)缩放以适合图像,则调用 zoomToRect

[scrollView zoomToRect:CGRectMake(0.0,  0.0, AllWidth, AllHeight) animated: NO];

出于某种原因,确实将 imageview 滚动到底部。但预计 UI 不会发生任何事情

如果滚动视图没有完全按宽度 ( ) 缩放以适合图像scrollView.zoomScale = (320.0-1)/AllWidth;,则调用 zoomToRect 会执行预期的操作 - 图像被缩放并且不会滚动到底部。

我注意到在“错误”情况下 ContentOffset.y 已更改,但我不知道为什么。

要重现该问题,请在 viewcontroller.h 文件中添加新项目<UIScrollViewDelegate>;viewcontroller.m 在这里:http : //pastebin.com/bPUtuYn1 (在测试项目中,您需要双击绿色图像,然后将“320.0-1”更改为“320.0”并重试)

4

0 回答 0