You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Auto Scale的竖屏iPhone App如何在iPhone X实现全屏?

解决方案:让使用Auto Scale的旧版App在iPhone X上全屏显示

没问题,这事儿完全可以搞定!你之前靠命名式启动图让旧机型全屏的思路是对的,要适配iPhone X,核心就是让系统知道你的App支持它的新屏幕比例,具体可以按下面两种方式操作:

方式一:继续使用命名式启动图(适配你的现有流程)

既然你习惯了不把启动图放进资源目录、不用启动故事板的方式,那只要添加对应iPhone X系列的启动图就行:

  • 为iPhone X/XS添加启动图:命名为Default-812h@3x.png,尺寸是1125×2436像素
  • 如果还要兼容iPhone XR/XS Max,再补充:
    • Default-896h@2x.png(XR用,尺寸828×1792)
    • Default-896h@3x.png(XS Max用,尺寸1242×2688)
  • 把这些启动图直接放在项目根目录,和你之前的Default-568h@1/2/3.png放在一起,不用放进Assets.xcassets

方式二:改用启动故事板(更现代的适配方式)

如果你愿意调整一下流程,启动故事板是一劳永逸的方案,适配所有新老机型:

  • 创建一个Launch Screen.storyboard,在里面添加一个全屏的视图(不需要复杂约束,因为你用Auto Scale,只要让视图占满屏幕就行)
  • 打开项目的「General」设置,在「App Icons and Launch Images」里,把「Launch Screen File」选择为你刚创建的故事板
  • 这种方式下,你可以移除之前所有命名的启动图,系统会自动根据机型生成适配的启动画面

额外注意事项

  1. 检查你的Info.plist:如果里面有UILaunchImages数组,要把新添加的启动图信息补充进去;如果用启动故事板,直接移除这个数组就行
  2. 确认你的Auto Scale逻辑:因为你用的是Auto Scale而非Auto Layout,要保证代码里的布局是基于屏幕bounds来计算的,而不是硬编码旧机型的尺寸(比如320×568),这样内容才能自动适配iPhone X的全屏

只要完成上面的步骤,你的App就会识别iPhone X的全面屏,不再进入信箱模式,而是正常全屏显示啦!

内容的提问来源于stack exchange,提问作者user2596590

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 08:28:17