【问题标题】:Cannot get app icons to work in Xcode 6无法让应用程序图标在 Xcode 6 中工作
【发布时间】:2014-11-04 21:01:10
【问题描述】:

我这辈子都无法让它发挥作用。这就是我正在做的事情:

  • 为 iPhone 创建一个全新的项目。
  • 在“项目”>“常规”中,项目已设置为从默认资产目录中获取应用图标。
  • 进入资产目录 > AppIcon 并根据需要放入图片。
  • 构建并运行。没有图标。
  • 检查项目 > 构建设置 > 资产目录应用程序图标集名称。它已正确设置为 AppIcon。
  • 检查 images.xcassets 文件并确保它具有正确的目标成员资格。
  • 检查项目 > 构建阶段 > 复制捆绑资源并验证 images.xcassets 是否在其中。

还是什么都没有。我要疯了。有人请告诉我我在某处忘记了一个复选框。请问?

【问题讨论】:

  • 您确定将图标添加到项目中吗?我刚刚在 Xcode GM 中创建了一个新项目,在 Images.xcassets AppIcon 文件夹中放入了一些应用程序图标,并且该图标出现在第一次构建中。您是否尝试在 Images.xcassets 中的 AppIcon 上进行控制单击并单击“在查找器中显示”以确保您的项目具有对图像文件的引用?
  • 感谢您的快速回复,蒂姆。我想通了——图像在某种程度上很糟糕。下面的答案中的详细信息。
  • @BrianRak 感谢您的这些步骤。这是什么意思?检查 images.xcassets 文件并确保它具有正确的目标成员资格。你如何检查目标会员?我用谷歌搜索但找不到任何东西。
  • @sunny 我现在不在我的 Mac 前,所以我可能有一两个细节错误,但是如果您选择一个项目资源,然后在检查器窗格中查看(我相信) File 选项卡,有一个带有复选框的部分,您可以在其中说明文件应包含在哪些目标中。选中此处的框应该与通过 Project > Build Phases > Copy Bundle Resources 添加文件具有相同的效果。

标签: ios xcode icons asset-catalog


【解决方案1】:

问题出在图片上。我一直无法弄清楚他们到底出了什么问题。 使用其他编辑器重新保存它们会导致它们开始在我的项目中工作。

如果它对任何人有帮助,这些是我的场景的详细信息:

  • 我使用 Inkscape 以编程方式创建了图像。
  • 这些文件都是 32 位 PNG。
  • 我通过检查二进制文件确认,按照 Apple 的建议,隔行扫描已关闭。
  • 使用 Fireworks 重新保存为 32 位 PNG 会生成工作文件。
  • 我比较了好文件和坏文件,只有标题不同。我不确定有毒块是什么,但我确实注意到好文件和坏文件之间的pHYs 尺寸不同(好:00 00 0B 12,坏:00 00 0B 13,它们都对应于 72 dpi)。显然 DPI 在这里应该无关紧要,但我确实隐约记得过去我在处理没有写入特定 DPI 的图像时遇到问题的案例。

无论如何,我非常希望这可以为其他人省去一些麻烦。

【讨论】:

  • 我有一个类似的问题,我输入了应用程序图标的大小。它可以构建,但我收到许多警告,要求 60x60@2x 是必需的,我有一个未分配的图像,29x29=58、40x40=80、80x80=120、60x60=120,而且我没有应用程序启动图标。我有 29、40、60、80、87、120 和 180。
【解决方案2】:
  1. 确保在 Settings > General > App Icons and Launch Images 下 App Icons Source 设置为 AppIcon
  2. 在 Images.xcassets 下包含尺寸正确的图像文件(请参阅下图)
  3. 您的图标必须是 .png,并且您必须按照以下文档调整大小:https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html

如果链接失效,它会变成这样(设置图标、工具栏和导航栏图标、标签栏图标等的更多大小限制):

iPhone 6 Plus (@3x) 的应用程序图标大小:180x180
iPhone6 和 iPhone5 的应用图标大小(@2x):120x120

iPhone 4s 的应用程序图标大小 (@2x):120x120

iPad 和 iPadmini 的应用程序图标大小(@2x):152x152

【讨论】:

  • 您应该考虑包含相关文档的 sn-p,以防万一链接失效。
【解决方案3】:

万一其他人再次遇到这种情况: 我无法让图标工作,因为资产目录不在根资源文件夹中,而是在子文件夹中,这显然不允许图标 (Xcode 7)

【讨论】:

    【解决方案4】:

    更改一些代码后,我注意到应用程序图标停止工作。我查看了差异,在 YourProject.xcodeproj/project.pbxproj 文件中,Xcode 从

    更改了一行
    24E9FAB41A9C9E410054E235 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
    

    24E9FAB41A9C9E410054E235 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Images.xcassets; sourceTree = "<group>"; };
    

    我在文本编辑器中打开文件,将 lastKnownFileType 改回 folder.assetcatalog,重建应用程序,应用程序图标再次出现。

    【讨论】:

      【解决方案5】:

      遇到了同样的问题,原因是哪个应用程序用于创建应用程序图标。 特别是使用 Asset Generator 生成时它们没有出现,但在使用 Icon Set Creator 时成功(两者都是 OS X 桌面应用程序)

      【讨论】:

        【解决方案6】:

        我的项目设法获取了一个未包含在目标成员资格中的 images.xcassets 文件。我有多个 xcassets 文件,因此我在管理器中查看了它们以找到正确的文件,并在 Target Membership 面板中选中了它的框。现在开始工作。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-05-18
          • 2012-07-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-08-07
          • 1970-01-01
          • 2013-09-03
          相关资源
          最近更新 更多