ios - 将大 UIImage 比例下载到 UIImageView

标签 ios objective-c uiimageview uiimage

我正在下载一个相当大的图像并将其存储在 UIImage 中。然后我将 UIImage 添加到 UIImageView 中进行显示,但是 UIImage 太大了,因此它只显示了一部分图像(它的左上角)。我希望它显示整个 UIImage,缩小图像以适合 UIImageView。

我看过很多不同的答案,但我无法让其中任何一个起作用。我已将 UIImageView 的缩放模式设置为 Aspect Fill、fit 和你命名的(也尝试过剪辑 subview )但没有任何效果。

代码如下:

UIImage *trackImg = [UIImage imageWithContentsOfFile:trackImagePath];
_backgroundImage.image = trackImg;

代码很简单,但它所做的只是下载一个 UIImage,并将其设置为 UIImageview 的图像。 UIImageView 在 interface-builder 中配置。

提前致谢。

最佳答案

您可以使用 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)];

关于ios - 将大 UIImage 比例下载到 UIImageView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28713786/

相关文章:

ios - Swift 3,框架 IBOutlet 属性始终展开可选

ios - touchesBegan 被 AppDelegate 而不是 UIView 的子类捕获

ios - UIImageView 不动

iphone - 一个 Objective c 接口(interface)可以有多个实现吗?

ios - UIImageView 阴影和纵横比填充在一起

ios - 图像不适合 UIImageView

iphone - 提交 iphone 应用程序时遇到问题

ios - 苹果使用哪种字体/字体大小作为 iOS 中的占位符

ios - 在构建时覆盖 NSUserDefault 首选项

iphone - objective-c : strange error when init a variable declared in my header file