gpt4 book ai didi

ios - 如何为所有分辨率制作全屏图像

转载 作者:行者123 更新时间:2023-11-29 01:13:33 25 4
gpt4 key购买 nike

我正在更新一个主页上有全屏图像的旧应用程序。我需要提供什么尺寸和比例的图片来支持 iPhone 4、5、6 和 6+?

如何使用 Asset Catalogs 一次设置所有这些分辨率并让它“正常工作”?我已经设置了一个 UIImageView 来填充主视图。我只想将它指向一个 Assets 组或其他东西。

最佳答案

这是我的解决方案。它可能不是最好的,但我保证它会起作用。

  1. 制作原始图像的副本,并针对不同的屏幕尺寸调整这些副本的大小。对于 iPhone 4,您需要 320x480 @2x,iPhone5 需要 320x568 @2x,iPhone 6 需要 375x667 @2x,iPhone 6+ 需要 414x736 @3x。请记住单位是点而不是像素。这是有关 iPhone 屏幕尺寸详情的链接:iPhone Screen Sizes

  2. 在运行时检测您的屏幕尺寸并加载不同的图像以适应屏幕。您可以通过将以下代码作为类别添加到 UIImage 类来完成此操作。

代码:

#define IPHONE44S       480
#define IPHONE55S 568
#define IPHONE6 667
#define IPHONE6PLUS 736

#import "UIImage+ZCDynamicUImageSize.h"

@implementation UIImage (ZCDynamicUImageSize)

+(UIImage *)dynamicSizedImageWithName:(NSString *)name{
CGFloat screenHeight = [UIScreen mainScreen].bounds.size.height;
UIImage *image;
if (screenHeight == IPHONE55S) {
image = [UIImage imageNamed:[NSString stringWithFormat:@"%@-568",name]];
}
else if (screenHeight == IPHONE6){
image = [UIImage imageNamed:[NSString stringWithFormat:@"%@-667",name]];
}
else if (screenHeight == IPHONE6PLUS){
image = [UIImage imageNamed:[NSString stringWithFormat:@"%@-736",name]];
}
else{
image = [UIImage imageNamed:[NSString stringWithFormat:@"%@-480",name]];
}
return image;
}
  1. 更改所有图像的名称,名称后跟高度。比如你的图片名称是“MyImage.png”,是iPhone5的图片,将图片名称改为“MyImage-568@2x.png”。

  2. 最后,使用第 2 步中创建的方法加载图像,然后将图像居中放置在 View 的中心。

关于ios - 如何为所有分辨率制作全屏图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35494637/

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