为OS X应用程序提供自定义图标?

时间:2015-01-08 22:35:47

标签: xcode macos xcode6 osx-yosemite

是的,我的问题真的很简单。如何让我的应用程序使用图标文件或资产目录?!

系统信息:
Xcode 6.1.1(6A2008a)
app目标OS X 10.10
OS X 10.10.1(14B25)

这是我的第一个OS X应用程序,但我有几年开发iOS应用程序的经验。

重现的步骤:

  1. 打开Xcode,启动一个全新的可可应用程序项目
  2. 不确定这是否重要,但我指定我的新项目不使用故事板或核心数据
  3. 将.png文件从我的本地目录拖到项目结构中,并确保(a)它最终在构建目标中,并且(b)文件副本到项目目录中
  4. 将png拖到AppIcon的任何/所有大小类下的Images.xcassets目录中。
  5. 构建并运行
  6. 预期:停靠栏和标签切换器中的应用程序具有新图标 实际:停靠栏和标签切换器中的应用程序具有默认的“空白页面,其上有乐器A”

    好吧,也许这是一个调试的事情。

    1. 归档项目,在finder中显示
    2. 预期:Finder中的应用程序具有正确的图标
      实际:不。但应该注意的是,Xcode的管理器显示正确的图标,并且确实存在文件Contents / Resources / AppIcon.icns。 Contents / Info.plist指定图标文件是“AppIcon”。

      哎呀。让我们试试没有资产目录。

      1. 在目标的常规设置中,在App Icon下,选择“不使用资产目录”
      2. 删除Images.xcassets
      3. 在Info.plist中,在图标文件(CFBundleIconFile)的行中,指定图标的名称(在我的例子中为“AppIcon”)。

        的文档clearly states
          

        系统在捆绑包的主资源目录中查找图标文件。

        此处不需要文件扩展名。

      4. build&跑。还存档,以节省时间。
      5. 预期:停靠栏和标签切换器中的应用图标正确无误 实际:不 预期:存档的应用程序具有正确的图标 实际:不,但已归档的产品在内容/资源中确实有正确的png文件。

        我缺少什么?!

        我尝试使用.png应用程序图标和常规.icns文件(由Xcode通过资产目录生成)。我已经尝试排除并包含Info.plist中的文件扩展名。为什么这么难?

        编辑清理,清理构建文件夹并删除派生数据文件夹帮助。

1 个答案:

答案 0 :(得分:2)

所以我在评论者的帮助下找到了答案:我必须使用精确尺寸的图像填充所有xcassets / icns插槽。