不同目标的 Xcode 启动图像

CFl*_*lux 5 xcode image target ios launch-screen

我在我的 Xcode 项目中创建了不同的目标来为不同的客户端版本我的应用程序。每个客户端使用不同的 xcassets,每个目标一个。这样我就可以拥有相同名称的不同图像。因此,只需选择目标,就会显示正确的图像

这适用于我的应用程序中的任何视图。每当我在不同的目标中运行应用程序时,所有图像都会自动更改。问题是当我的启动屏幕中有图像时。我为启动屏幕创建了 .xib 文件(每个客户端一个)

通过选择目标,正确的 .xib 运行,但它加载的图像始终与基础项目相同。


这就是我组织项目的方式,因此不同的目标会自动选择不同的图像:

  • Base.xcassets:
    1. 目标会员 = 基础
    2. 图像启动(基础项目启动屏幕)
    3. 基础项目的其他图像
  • Client1.xcassets:
    1. 目标会员 = Client1
    2. 图像启动(客户端 1 版本启动屏幕)
    3. 客户端 1 版本的其他图像
  • Client2.xcassets:
    1. 目标会员 = Client2
    2. 图像启动(客户端 2 版本启动屏幕)
    3. 客户端 2 版本的其他图像

当我选择一个目标时,应该加载具有该目标成员资格的所有元素。只有我的启动屏幕Base.xcassets加载图像启动。

Moh*_*mar 2

我面临同样的问题并最终解决了这个问题:(我现在使用 Xcode 11.3)

  • 从项目导航器中选择您的目标,然后选择目标的“全部”或“自定义”设置
  • 转到“构建设置”->“资产目录编译器”
  • 更改资产目录启动图像集名称的值

或者

  • 从项目导航器中选择您的目标
  • 搜索“ Launch Image ”并在“ Asset Catalog Compiler ”部分更改LaunchImage名称。

在此输入图像描述

如果新的启动屏幕未显示,请尝试删除您的应用程序并重新安装。

另外,请确保目标的“常规设置”中的“启动屏幕文件”选项为空。