gpt4 book ai didi

ios - 我的UIImage在屏幕上哪里?

转载 作者:行者123 更新时间:2023-12-01 17:00:03 25 4
gpt4 key购买 nike

我在UIImage中包含一个UIImageView。设置为使用UIViewContentModeScaleAspectFit contentMode。 UIImageView是屏幕的大小。图像不是,因此为scaleAspectFit模式。我不知道的是,UIImage在屏幕上的什么位置?框架是什么?图像的左上角在屏幕上出现在哪里?我可以在屏幕上看到它,但是不能在代码中看到它。这应该很简单,但我无法弄清楚。

最佳答案

在您的UIImageView中尝试以下操作:

假设您使用的是UIViewContentModeScaleAspectFit,它将计算图像的帧。

- (CGRect) imageFrame
{
float horizontalScale = self.frame.size.width / self.image.size.width;
float verticalScale = self.frame.size.height / self.image.size.height;
float scale = MIN(horizontalScale, verticalScale);
float xOffset = (self.frame.size.width - self.image.size.width * scale) / 2;
float yOffset = (self.frame.size.height - self.image.size.height * scale) / 2;
return CGRectMake(xOffset,
yOffset,
self.image.size.width * scale,
self.image.size.height * scale);
}

它的作用是计算出需要缩小/放大UIImage使其适合每个维度的UIImageView中的大小,然后选择最小的缩放因子,以确保图像适合分配的空间。

这样,您就知道了UI图像的大小,并且很容易计算出w.r.t的X,Y偏移量。包含框架。

关于ios - 我的UIImage在屏幕上哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7884211/

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