我已经添加了如下图所示的图标,但我仍然没有在我的设备或模拟器中看到该图标。
16 回答
这可能是一个 XCode 5 错误,添加的图标实际上并未包含在应用程序包中,但您可以通过转到 Build Phases,展开 Copy Bundle Resources,然后按底部的“+”号手动添加来解决它图标文件到这个类别。
此外,iOS 5/6 似乎有一个错误,即即使图标文件包含在包中,屏幕也不会更新应用程序图标。要解决这个问题(正如 josema.vitaminew 在App Icon not changed when app version is updated in iOS 5 模拟器中所建议的那样),您可以将应用程序图标拖到一个文件夹中,然后 iOS 将更新它的外观。
如果使用资产目录,可能还需要检查是否Images.xcassets
包含所有目标,如下图所示。
扩展 adp 的答案,如果有人切换到资产目录但他们停止工作,仍然找不到资产目录、Images.xcassets、AppIcon 或 LaunchImage 不起作用的解决方案,这里是我遇到的相同问题的重现,和解决方案:
我已经升级到 Xcode 6 并打开了一个由早期版本(4 或 5,不确定)创建的项目,无论我做什么,当我在 iOS 模拟器或设备中运行应用程序时,AppIcons 和 LaunchImages 绝对会出现。
我尝试了 Xcode->Product->Clean,Xcode->Window->Organizer->Projects->Derived Data->Delete...,重新启动 Xcode 和 iOS 模拟器,然后重建并重新启动应用程序(失败)。
我在 iOS 模拟器中尝试了“重置内容和设置...”,甚至删除了 ~/Library/Developer/Xcode/DerivedData//Build/Products/Debug-iphoneos 并重新启动了应用程序(失败)。
我尝试归档项目,希望这只是 iOS 模拟器的问题,但 Organizer-Archives 窗口中的图标仍显示为带线条的默认白色方块,确认该图标也不会显示在设备上(当没有设备方便时有一个有用的技巧)。(失败的)。
我尝试在目标设置中选择“不使用资产目录”并创建新的 AppIcon-2 和 LaunchImage-2(失败)。 - 这至少花了我 2 个小时,因为这应该有效,而且它没有揭示 Xcode 中的错误,但我只是看不到它-
我尝试从单一视图模板创建一个新项目并比较所有 Info.plist 设置(失败)。
我尝试将新项目的 Contents.json 与我在 Images.xcassets 中的内容进行比较(失败)。
我尝试将图像从左侧边栏导航器拖到 AppIcon 图像井中,希望它们由于某种原因没有在构建阶段被复制(失败)。
最后,一想到必须创建一个新项目来修复图标,我感到恼火,我尝试在左侧边栏导航器中删除 Images.xcassets 并选择“移动到垃圾箱”,然后退出 Xcode 并重新启动以防缓存任何内容。然后当我点击 App Icons Source 弹出菜单时,它只显示“不要使用资产目录”。我必须选择它才能恢复“使用资产目录”按钮。然后我能够创建新的 AppIcons 和 LaunchImages,将图像拖到井中,在 iOS 模拟器中构建和启动应用程序,最后看到图标正确显示。
所以问题似乎在于 Xcode 如何在项目中存储 Images.xcassets,而不是目标成员、派生数据或 Images.xcassets 本身中的任何内容。您必须删除您的资产文件并创建一个新的,然后再次手动将图像拖到井中。
我花了 3 个小时的研究来解决应该“刚刚工作”的问题,而且多年来必须手动创建单独大小的艺术资产的整个过程非常乏味,以至于我个人花费了无数小时的忙碌工作。
希望这个错误解决方法可以帮助某人避免我所经历的挫败感。我无法解决手动调整艺术资产大小的问题,但我强烈推荐Icon Slayer网站来实现自动化(我与该网站无关)。
当项目从 xcode5 切换到 xcode6 时,我遇到了同样的问题。解决方案是只需单击图像资产中的图标,打开右侧面板,只需勾选面板中的 iOS 版本选项,添加空白图标再次运行它......它对我有用
根据 Apple Docs,图标必须放在应用程序文件的根级别。
IOS/Xcode 不会在目录下搜索您的图像。
解决方案是将图像移动到应用程序的根目录,即源文件所在的位置,或者您可以以相同的方式创建引用。
问候海德
就我而言,我只需要清理和重建我的项目。
我遇到了同样的问题,几个小时后我终于可以解决它,从我的一个备份项目中复制一个旧的 -info.plist 并替换它,这对我来说很好。问候
我的问题最终是我使用了 jpg 图像,而不是 pngs。
对于 macOS/OSX 应用程序,您还需要始终添加 128 像素大小(和 2x),您不仅可以使用 512 像素大小并期望它缩小。
对我来说,这是一个比这里列出的其他解决方案简单得多的解决方案。我只是把资产弄错了大小。我没有注意必要的乘数(例如 2x 或 3x),因此构建会针对不正确的资产大小(我忽略了)生成警告。就我而言,我纠正了图像大小,瞧,它们出现在模拟器中。
如果您使用的是 cocoapods,请务必从相关问题中检查此答案。在失去了许多小时之后,这就是为我解决的问题。
如果您的应用程序图标有任何透明度,那么它将不起作用。核实!
我在相关文件夹中拥有所有图像,当我右键单击其中的空图标图像Images.xcassets/AppIcon
并选择show in finder
它时,它会正确找到图像并显示它,但无论出于何种原因,它都没有正确添加到项目中。
在上面尝试了很多不同的事情之后,我只是将图像从 finder 拖到 AppIcon 区域中,它就可以工作了。