【问题标题】:iOS get actual size of image from Assets based on device screen sizeiOS 根据设备屏幕尺寸从 Assets 获取图像的实际尺寸
【发布时间】:2019-04-27 10:57:17
【问题描述】:

我正在开发一个使用许多图像作为图标的iOS 应用程序。我已将图像添加到资产并从我的视图中访问它们。

我需要知道运行时将在屏幕上显示的图像的实际大小。当我像这样创建UIImage 对象时:

let image = UIImage(named: "my_image")

然后访问它的大小,我总是得到1x 大小-在具有不同屏幕尺寸的所有设备上-。据我所知,iOS 在运行时会根据屏幕尺寸加载适当的图像尺寸。

那么,我怎样才能获得将在屏幕上呈现的实际图像大小,而不是总是获得默认大小?

【问题讨论】:

标签: ios iphone uiimage assets


【解决方案1】:

UIImage 的大小以磅为单位。要获得以像素为单位的实际大小,您可以将其乘以屏幕的比例 - 对于 Retina 显示器来说是 2.0 或 3.0 - 就像这样

let scale = UIScreen.main.scale
let sizeInPixels = CGSize(width: imageSize.width * scale, height: imageSize.height * scale)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-28
    相关资源
    最近更新 更多