Ios 已将大UIImage比例下载到UIImageView
我正在下载一个相当大的图像并将其存储在Ios 已将大UIImage比例下载到UIImageView,ios,objective-c,uiimageview,uiimage,Ios,Objective C,Uiimageview,Uiimage,我正在下载一个相当大的图像并将其存储在UIImage中。然后我将UIImage添加到UIImageView以显示,但是UIImage太大了,因此,它只显示图像的一部分(左上角)。我想让它显示整个UIImage,将图像缩小以适应UIImageView 我看了很多不同的答案,但都不管用。我已将UIImageView的缩放模式设置为两个方向填充、拟合,并由您命名(也尝试了剪辑子视图),但没有任何效果 代码如下: UIImage *trackImg = [UIImage imageWithContent
UIImage
中。然后我将UIImage
添加到UIImageView
以显示,但是UIImage
太大了,因此,它只显示图像的一部分(左上角)。我想让它显示整个UIImage,将图像缩小以适应UIImageView
我看了很多不同的答案,但都不管用。我已将UIImageView
的缩放模式设置为两个方向填充、拟合,并由您命名(也尝试了剪辑子视图),但没有任何效果
代码如下:
UIImage *trackImg = [UIImage imageWithContentsOfFile:trackImagePath];
_backgroundImage.image = trackImg;
代码很简单,但它所做的只是下载UIImage,并将其设置为UIImageview的映像。UIImageView在界面生成器中配置
提前感谢。错误在于imageView的大小(感谢Huy Nghia)。我将约束设置错误,这导致imageView的大小与我预期的不同,我无法轻松检测到,因为我希望它填充整个屏幕
如果其他人遇到困难,请尝试确保您的约束条件正确。您可以使用scaleToSize方法调整图像大小:
-(UIImage *)imageWithImage:(UIImage *)image scaledToSize:(CGSize)newSize {
UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
// Here pass new size you need
[image drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
传递UIImage,它将调整大小。将该方法调用为:
[self imageWithImage:[UIImage imageNamed:@"yourImage.png"] scaledToSize:CGSizeMake(25,45)];
您能显示您的代码吗?对不起,现在添加。您是否设置了_backgroundImage.contentMode=ui视图contentmodescaleaspectfit?你检查过背景图像框了吗?哦,那是因为框的尺寸不对。我设置了错误的约束,这把它搞砸了-。-“仍然习惯于这种新的约束系统(有时觉得有点难),结果我找错了地方。非常感谢,非常抱歉。