在里面移动大图像的非常简单的方法UI图像视图如下。
让我们有一张大小为 (100, 400) 的图像,代表某张图片的 4 个状态,一个在另一个下。我们想要在正方形中显示 offsetY = 100 的第二张图片UI图像视图大小 (100, 100)。
解决办法是:
UIImageView *iView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
CGRect contentFrame = CGRectMake(0, 0.25, 1, 0.25);
iView.layer.contentsRect = contentFrame;
iView.image = [UIImage imageNamed:@"NAME"];
Here 内容框架是相对于真实帧的归一化帧UIImage尺寸。
所以,“0”意味着我们从左边框开始图像的可见部分,
“0.25”意味着我们的垂直偏移量为 100,
“1”表示我们要显示图像的全宽,
最后,“0.25”表示我们只想显示图像高度的 1/4 部分。
因此,在局部图像坐标中,我们显示以下帧
CGRect visibleAbsoluteFrame = CGRectMake(0*100, 0.25*400, 1*100, 0.25*400)
or CGRectMake(0, 100, 100, 100);