gpt4 book ai didi

ios - 将 UIImage 调整为 UIImageView

转载 作者:可可西里 更新时间:2023-11-01 03:39:21 25 4
gpt4 key购买 nike

我试图将图像放入 uiimageview,图像是动态下载和加载的,并且只有一种分辨率可用于 ios 和 android 应用程序。

因此,我需要图像保持纵横比和宽度缩放,我将 UIImageView 内容模式设置为UIViewContentModeScaleAspectFill,但它居中图像,因此它在顶部和底部都超出屏幕,图像将被设计为底部是不必要的。

如何将图片对齐到左上角?

UIImageView 也可以为我缩放到宽度吗?或者我该怎么做?

提前致谢。

编辑:

我尝试了 setcliptobounds 并将图像剪切为 imageview 大小,这不是我的问题。

UIViewContentModeTopLeft 运行良好,但现在我无法应用 UIViewContentModeScaleAspectFill,或者我可以同时应用两者吗?

最佳答案

您可以缩放图像以适应 ImageView 的宽度。

您可以在 UIImage 上使用类别来创建具有选定宽度的新图像。

@interface UIImage (Scale)

-(UIImage *)scaleToWidth:(CGFloat)width;

@end

@implementation UIImage (Scale)

-(UIImage *)scaleToWidth:(CGFloat)width
{
UIImage *scaledImage = self;
if (self.size.width != width) {
CGFloat height = floorf(self.size.height * (width / self.size.width));
CGSize size = CGSizeMake(width, height)

// Create an image context
UIGraphicsBeginImageContext(size);

// Draw the scaled image
[self drawInRect:CGRectMake(0.0f, 0.0f, size.width, size.height)];

// Create a new image from context
scaledImage = UIGraphicsGetImageFromCurrentImageContext();

// Pop the current context from the stack
UIGraphicsEndImageContext();
}
// Return the new scaled image
return scaledImage;
}

@end

这样你就可以用它来缩放图像了

UIImage *scaledImage = [originalImage scaleToWidth:myImageView.frame.size.width];
myImageView.contentMode = UIViewContentModeTopLeft;
myImageView.image = scaledImage;

关于ios - 将 UIImage 调整为 UIImageView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17784664/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com