我有一个UIImageView
显示比实际图像更宽和更高的图像UIImageView
是。我想使用动画在视图中平移图像(以便平移漂亮且平滑)。
在我看来,我应该能够调整bounds.origin
of the UIImageView
,并且图像应该移动(因为图像应该在视图内绘制为its起源,对吧?)但这似乎不起作用。这bounds.origin
改变,但图像绘制在相同的位置。
几乎有效的是改变contentsRect
视图层的。但这是从一个单位正方形开始的,即使图像的可视区域不是整个图像。所以我不确定如何检测到图像的远边缘被拉入可视区域(我需要避免这种情况,因为它通过将边缘拉伸到无穷大来显示,这看起来,嗯,低于标准) )。
我的观点目前有其contentsGravity
set to kCAGravityTopLeft
通过 Interface Builder,如果这有影响(是否会导致图像移动?)。不过,似乎没有其他选择更好。
更新:明确地说,我想移动图像inside视图,同时将视图保持在同一位置。
我强烈建议附上您的UIImageView
in a UIScrollView
。有UIImageView
显示完整图像,并设置 contentSizeUIScrollView
和你的一样UIImageView's
尺寸。你的window
图像的大小将是UIScrollView
,并通过使用scrollRectToVisible:animated:
您可以以动画方式平移到图像上的特定区域。
如果不想出现滚动条,可以设置showsHorizontalScrollIndicator
and showsVerticalScrollIndicator
属性到NO
.
UIScrollView
还提供捏缩放功能,这可能对您有用,也可能没用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)