0

我有一个UIImageView显示 aUIImage的内容模式设置为UIContentModeScaleAspectFit. 图像视图与屏幕一样宽。我想在不改变图像位置和比例的情况下调整图像视图的大小。因此,在调整大小之后,UIImage 将实际上仍然在相同的位置,并且实际上仍然与屏幕一样宽,但由于 imageview 调整大小而不完全可见。

我尝试UIContentModeLeft在从右侧调整大小时使用 来固定UIImage位置,但我的图像不像我使用时那样处于全分辨率UIContentModeScaleAspectFit

我对此一无所知。我可能需要使用 CGImage 或 CIImage,但我不知道从哪里开始。

4

2 回答 2

1

将要显示的图像设置为视图的背景,而不是源图像。

您可以使用:

yourImageView.background = [UIColor colorWithPatternImage:[UIImage imageNamed:@"nameOfTheImageYouWantToDisplay"]];

于 2015-08-13T21:09:38.540 回答
0

我设法解决了我的问题。这是我所做的:

  • 创建一个UIView我在其中添加UIImageView子视图
  • 将 imageview 内容模式设置为UIContentModeScaleAspectFit
  • 将 imageview 框架定义到屏幕[[UIScreen mainScreen] bounds]
  • setClipsToBounds = YESUIView

现在,在调整大小时,图像视图不会缩放,因为它的框架被定义为与屏幕一样大,setClipsToBounds:请确保我看不到 UIView 框架之外的图像部分。

于 2015-08-14T11:16:57.700 回答