iOS--LaunchImage启动页设置及问题解决

本文详细介绍了iOS中LaunchImage的尺寸设置及其在不同设备上的显示效果。涵盖了从添加LaunchImage到解决显示问题的全过程,包括针对不同iOS版本和屏幕尺寸的图片尺寸指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、iOS中LaunchImage的尺寸

在我们应用开发中,用户在手机上点开我们的应用,从手指点击到我们的应用图标到我们的应用真正启动是需要一段时间的,随着开发的推进,有可能会把这个时间变得比较长,这个时候我们就需要有一个占位图来在用户点击了我们的应用之后马上显示出来给用户看。这个东西就是 LaunchImage

如何使用

添加 LaunchImage很简单,只需要在图片文件夹Images.xcassets中点击 +,然后选择App Icons & Launch Images 然后选择 New iOS Launch Image就可以了。

addLuanchImage.png

尺寸大小

添加了之后我们就会看到一大堆等着我们填充的位置,这么多位置,看着真是不知道要写填什么尺寸好。

showLuanchImage.png

那么下边我就把每个位置对应的图片尺寸写下来。

iPhone Portrait iOS 5,6

  • 1x : 320*480
  • 2x : 640*960
  • Retina : 640*1136

iPad Protrait Without Status Bar iOS 5,6

  • 1x : 768*1004
  • 2x : 1536*2008

iPad Portrait

  • 1x : 768*1024
  • 2x : 1536*2048

iPad Landscape Without Status Bar iOS 5,6

  • 1x : 1024*748
  • 2x : 2048*1496

iPad Landscape iOS 5,6

  • 1x : 1024*768
  • 2x : 2048 * 1536

iPhone Protrait iOS 8,9

  • Retina HD 5.5'' : 1242*2208
  • Retina HD 4.7'' : 750*1334

iPhone Landscape iOS 8,9

  • Retina HD 5.5'' : 2208 * 1243

iPhone Portrait iOS 7-9

  • 2x : 640*960
  • Retina4 : 640*1136

iPad Portrait iOS 7-9

  • 1x : 768*1024
  • 2x : 1536*2048

iPad Landscape iOS 7-9

  • 1x : 1024*768
  • 2x : 2048*1536

这样设置好了之后,我们的应用在启动时就会显示对应的启动图片了。

二、iOS--LaunchImage启动页设置及问题解决

在Assets.xcassets中使用LaunchImage来设置启动图:

 

一.根据不同屏幕尺寸的需求设置不同的图片,可以参照下图:

      1.点击Image.xcassets 进入图片管理,然后右击,弹出"New Launch Image"

      2.右侧的勾选可以让你选择是否要对ipad,横屏,竖屏,以及低版本的ios系统做支持

3. 注意: 为适配 iPhone X, 图片尺寸为1125px*2436px

 

 

 

 

二.取消系统默认使用的LaunchScreen,首先你要取消Use as Launch Screen 的选中

 

 

 

 

三.需要设置Launch Screen File   

   单击你整个项目名称,  选择General,就是这个.

 

 

在配置好以上之后启动页的图片就会使用LaunchImage中的图片了..


但是经过上述步骤之后,你觉得完全没有问题了,但是仍然无法显示LaunchImage。

或者,你在多个模拟器上运行该程序,有的模拟器能够显示,有的模拟器不能显示。

这时候你可能会有3个选择:

1. 菜单-product-Clean-rebuild,也就是重新build程序。

2. 菜单-Xcode-preference-Locations-Derived data-open in Finder,然后删除其中的缓存文件,并重新build程序。

3.把App在模拟器上卸载掉,然后重新build。

4.reset模拟器

正常情况下,LaunchImage 应该会显示了。


如果真的真的还是不显示的话, 或者遇到5s真机测试时屏幕变小,且有上下两条黑道的话,那就是图片的问题,是否为jpeg转为png的呢?又或者是图片大小不对. 这是我遇到过的情况.

### iOS 开发中使用 Objective-C 配置 LaunchScreen.storyboard 的方法 为了在 iOS 应用程序中正确配置 `LaunchScreen.storyboard` 作为启动页,以下是详细的说明: #### 1. 使用 Xcode 进行基础设置 在 Xcode 中,确保项目的配置满足以下条件: - 打开项目,在 **Targets** 下的 **General** 页面找到 **App Icons and Launch Images** 部分。 - 将 **Launch Screen File** 设置为 `LaunchScreen` 文件名[^2]。 #### 2. 删除旧版启动图片配置 如果之前使用的是基于资产目录(Asset Catalog)的方式加载启动图片,则需要移除这些配置以避免冲突。具体操作如下: - 转至 **Build Settings** 并搜索关键词 `asset catalog launch image set name`。 - 如果存在名为 `LaunchScreen` 或其他相关内容的字段值,请将其清空并保存[^3]。 #### 3. 编辑 LaunchScreen.storyboard 文件 通过 Interface Builder 对该 storyboard 添加自定义 UI 组件来增强视觉效果。例如可以加入应用 Logo 图片视图 (`UIImageView`) 和品牌文字标签 (`UILabel`) 等元素[^4]。 #### 4. 实现动态逻辑处理 (可选) 虽然静态展示已经完成,但如果希望进一步扩展功能比如延迟进入主界面或者显示广告等内容,则可以在 AppDelegate.m 文件中的 `-application:didFinishLaunchingWithOptions:` 方法里调用相应函数实现业务需求: ```objective-c -(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; // 初始化根控制器 UIViewController *rootVC = [[UIViewController alloc] init]; rootVC.view.backgroundColor = [UIColor whiteColor]; UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:rootVC]; self.window.rootViewController = navController; [self.window makeKeyAndVisible]; // 可在此处执行额外初始化工作, 如网络请求预取数据等. dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0f * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ NSLog(@"模拟两秒后的动作"); // 动态页面跳转逻辑 [self setupStartPageView]; }); return YES; } // 自定义方法用于呈现特定内容给用户查看一段时间后再切换到主页或其他位置 -(void)setupStartPageView{ UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; UIViewController* startPageVC = [storyBoard instantiateInitialViewController]; UIWindow *keyWindow = [[[UIApplication sharedApplication] delegate] window]; keyWindow.rootViewController = startPageVC; } ``` 上述代码片段展示了如何利用延时机制控制从启动画面过渡到应用程序主要区域的过程[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值