如何在 iOS 设备上调整图像大小?
How to size images on iOS devices?
我正在制作 spritekit 游戏。我了解如何在 SKScene 中调整我的图像大小,因为它在所有设备上都是 750x1334 点,但应用程序的主页使用 UIKit/a 集合视图控制器,所以我不确定如何调整我的图像大小。我想让图像占据屏幕宽度的 1/3,然后使图像高度等于图像宽度。
iPhone SE is 320x568 points
iPhone 7 is 375x667 points
iPad Pro 10.5 inch is 1112x834 points
我是否只制作最大可能设备宽度(1112 点)的 1/3 的图像,然后让较小的设备按比例缩小图像?即 1112 点除以 3 是 370 点,所以制作宽度和高度为 370 点的图像(740.6px@2x 和 1112px@3x)?
在Storyboard
中,您可以使用以下步骤,
- 在图像视图和您的实际视图之间设置等宽和等高
- Select
equal width constraint
并将乘数从 1 to 1:3
更改为
- Select
equal height constraint
并将乘数从 1 to 1:3
更改为
- 图像视图现在应该占据 1:3 的屏幕尺寸。
附上 iPhone
和 iPad
设计的屏幕截图,
希望对您有所帮助。
I want to have the images take up 1/3 of the screen width and then have the image height equal the image width. Do I just make images that are 1/3 of the largest possible device width (1112 points) and then let smaller devices scale the images down?
没有。当您 "let smaller devices scale the images down" 时,您仍在加载全尺寸图像,从而浪费内存。此外,让运行时自动缩小图像(例如,因为您使用具有纵横比适合或纵横比填充内容模式的图像视图)会浪费时间和处理能力,通常是在应用程序尝试启动的关键时刻。
正确的步骤是:
在您的应用程序 bundle 中,您应该只包含 一个 大小的图像,可能有三种分辨率,这应该是您要显示的最大屏幕上可接受的最小尺寸。
在您的 代码 中,您应该确定图像 实际 显示的大小我们 运行 所在设备的屏幕,并加载缩小到该尺寸的图像缩略图。
这样不会浪费内存;保存在内存中的图像就是显示的图像。
我正在制作 spritekit 游戏。我了解如何在 SKScene 中调整我的图像大小,因为它在所有设备上都是 750x1334 点,但应用程序的主页使用 UIKit/a 集合视图控制器,所以我不确定如何调整我的图像大小。我想让图像占据屏幕宽度的 1/3,然后使图像高度等于图像宽度。
iPhone SE is 320x568 points
iPhone 7 is 375x667 points
iPad Pro 10.5 inch is 1112x834 points
我是否只制作最大可能设备宽度(1112 点)的 1/3 的图像,然后让较小的设备按比例缩小图像?即 1112 点除以 3 是 370 点,所以制作宽度和高度为 370 点的图像(740.6px@2x 和 1112px@3x)?
在Storyboard
中,您可以使用以下步骤,
- 在图像视图和您的实际视图之间设置等宽和等高
- Select
equal width constraint
并将乘数从1 to 1:3
更改为
- Select
equal height constraint
并将乘数从1 to 1:3
更改为
- 图像视图现在应该占据 1:3 的屏幕尺寸。
附上 iPhone
和 iPad
设计的屏幕截图,
希望对您有所帮助。
I want to have the images take up 1/3 of the screen width and then have the image height equal the image width. Do I just make images that are 1/3 of the largest possible device width (1112 points) and then let smaller devices scale the images down?
没有。当您 "let smaller devices scale the images down" 时,您仍在加载全尺寸图像,从而浪费内存。此外,让运行时自动缩小图像(例如,因为您使用具有纵横比适合或纵横比填充内容模式的图像视图)会浪费时间和处理能力,通常是在应用程序尝试启动的关键时刻。
正确的步骤是:
在您的应用程序 bundle 中,您应该只包含 一个 大小的图像,可能有三种分辨率,这应该是您要显示的最大屏幕上可接受的最小尺寸。
在您的 代码 中,您应该确定图像 实际 显示的大小我们 运行 所在设备的屏幕,并加载缩小到该尺寸的图像缩略图。
这样不会浪费内存;保存在内存中的图像就是显示的图像。