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

使用LaunchScreen.storyboard在Xamarin.iOS中添加启动图遇问题求助

解决Xamarin.iOS中LaunchScreen.Storyboard适配iPhoneX启动图不显示的问题

我之前也踩过一模一样的坑,给你几个亲测有效的步骤,一步步来应该能搞定:

1. 确认LaunchScreen.Storyboard的基础配置

  • 先检查项目属性:右键项目→属性→iOS应用程序→启动屏幕,确保已经选中LaunchScreen.Storyboard。
  • 打开Storyboard,给根视图添加启动图的两种方式:
    • 直接选中根视图的View,在属性面板里设置Background为你要的启动图资源;
    • 拖入UIImageView铺满整个屏幕,设置上下左右全约束对齐父视图,然后在属性里选择Images.xcassets中的资源,记得把缩放模式改成Aspect Fill或者Scale To Fill,避免变形。

2. 手动配置Images.xcassets适配iPhoneX

Xamarin里确实没有现成的iPhoneX LaunchImage占位符,但可以手动编辑Contents.json来补全:

  • 在Images.xcassets里右键新建Image Set,命名比如LaunchScreenImage;
  • 右键这个Image Set→Show in Finder,找到Contents.json用文本编辑器打开,替换成以下配置(注意替换成你的图片文件名,iPhoneX启动图尺寸是1125×2436像素):
{
  "images" : [
    {
      "idiom" : "universal",
      "filename" : "LaunchBase.png",
      "scale" : "1x"
    },
    {
      "idiom" : "universal",
      "filename" : "LaunchBase@2x.png",
      "scale" : "2x"
    },
    {
      "idiom" : "universal",
      "filename" : "LaunchBase@3x.png",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "filename" : "LaunchiPhoneX.png",
      "subtype" : "2436h",
      "scale" : "3x"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}
  • 把对应尺寸的图片放到这个Image Set的文件夹里,文件名要和json里的完全一致。

3. 清理缓存并重建项目

这一步经常被忽略,但很多时候就是缓存搞的鬼:

  • 右键项目→Clean,然后Rebuild整个解决方案;
  • 模拟器上先删除已安装的APP,重启模拟器再部署;真机上卸载APP后重新安装。

4. 检查Info.plist的冲突设置

打开Info.plist,确认这两点:

  • 如果存在UILaunchImages字段,直接删除(用LaunchScreen.Storyboard时,这个旧配置会干扰启动图显示);
  • 确认UILaunchStoryboardName的值是LaunchScreen,没有拼写错误。

要是还不行,可以先把Storyboard里的启动图换成纯色背景测试,如果纯色能显示,那就是图片资源的命名或尺寸有问题,再回头检查Images.xcassets的配置就行。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 07:46:54