58

我在 iOS 5 beta 5 的应用程序图标中出现光泽效果问题,在 iOS 4 中它显示的不是光泽效果,但 iOS5 显示光泽效果。我放了选项Icon already includes gloss effects = YES,但根本不起作用,而且应用程序 Google+ 似乎也有同样的问题

4

11 回答 11

123

iOS 5 在 Info.plist 文件中有一个新的“Icon Files (iOS 5)”键。确保该字典中的“图标已经包含光泽效果”布尔值也设置为“是”。您可能需要在更改在模拟器中生效之前清除您的构建文件夹。需要大量故障排除才能使其在较旧的项目上运行,因此您可以尝试擦除根级密钥。

于 2011-10-17T16:20:36.973 回答
36

项目信息列表中的第一个设置设置键图标已经包含光泽效果到 YES 布尔值,如下面的屏幕截图:

在此处输入图像描述

在尝试项目目标设置后,勾选应用程序图标部分的摘要点击中的复选框,如下面的屏幕截图:

在此处输入图像描述

它对我有用!

提前欢迎!

于 2012-06-30T07:30:30.770 回答
22

看来这个问题在 GM 中仍然没有解决。我将 UIPrerenderedIcon 设置为 YES,但渲染的图标包含光泽效果。


抱歉,我确认这个问题已经在 GM 中解决了。如果您想删除总效果,请将“图标文件(iOS 5)”下的“主要图标”下的“图标已包含总效果”设置为“是”。

于 2011-10-06T01:16:57.170 回答
13

Info.plist 中有 2 个键来控制这个。

xCode 为您生成了以下代码,但它不提供用于更改此代码的 GUI:打开 Info.plist 文件(右键单击 > 打开为 > 源代码)。

<key>CFBundleIcons</key>
<dict>
    <key>CFBundlePrimaryIcon</key>
    <dict>
        <key>CFBundleIconFiles</key>
        <array>
            <string>myIcon.png</string>
        </array>
        <key>UIPrerenderedIcon</key>
        <false/>
    </dict>
</dict>

设置UIPrerenderedIcon = true好你就可以开始了(这不是UIPrerenderedIcon在这个文件中也作为布尔键存在的另一个!)。

于 2012-01-22T11:04:43.477 回答
11

以防万一有人因为在 Xcode 5.0 中使用资产目录的问题而偶然发现这一点,资产目录的 Attributes Inspector 中有一个设置需要检查:

属性检查器

于 2013-09-24T19:40:49.783 回答
5

你们中的一些人会做这些事情,但仍然没有视网膜显示或光泽来反映这些变化。

在 XCode 4.3.2 和可能更早的版本中,请确保检查项目设置中的“摘要”选项卡。在那里你会找到一个名为“App Icons”的部分,它应该同时显示你的 Icon.png 和 Icon@2x.png。确保选中“预呈现图标”框

即使在这一切之后,您也可能无法让视网膜显示器正常工作。 检查“信息”选项卡的“自定义 iOS 目标属性”部分。

在这里您可能会发现您的 plist 没有更新您的图标文件

如果您不打算使用它们,请确保删除“Newstand Icons”部分,否则它会阻止您的应用在提交到 AppStore 时通过验证。

于 2012-07-24T15:56:03.493 回答
3

在 iOS5 Beta 6 的发行说明中它说:

已修复:此测试版中不支持 UIPrerenderedIcon 键(在 Info.plist 文件中)。

于 2011-08-22T22:15:10.913 回答
2

我在使用 xCode 5.0 时遇到了同样的问题,即不需要的光泽效果。我浏览了所有发布的答案。这对我有用:

1) 从 Info.plist 中删除“图标已经包含光泽效果”。我这样做是因为,虽然它设置为“YES”,但它应该可以正常工作——无论出于何种原因,它都不起作用,所以我想在添加正确的代码之前将其删除。

操作方法如下:在导航器(左栏)中单击您的项目名称 > 然后在编辑器(中栏)中单击信息。在“图标包括光泽效果”字段中,单击减号“-”按钮删除。这将删除不起作用的代码,因此您将从一个干净的调色板开始。

2) 打开您的 Info.plist 文件——在导航器(左列)中,找到 info.plist 文件,然后(右键单击 > 打开为 > 源代码)。

3)您的代码将如下所示:

    <key>CFBundleIcons</key>
<dict>
    <key>CFBundlePrimaryIcon</key>
    <dict>
        <key>CFBundleIconFiles</key>
        <array>
            <string>Icon-120</string>
            <string>Icon-72</string>
            <string>Icon-57</string>
        </array>
    </dict>

现在复制以下两行代码,因为您会将它们粘贴到上面的代码中:

     <key>UIPrerenderedIcon</key>
        <true/>

您的最终代码应如下所示:

    <dict>
    <key>CFBundlePrimaryIcon</key>
    <dict>
        <key>CFBundleIconFiles</key>
        <array>
            <string>YourIconFile</string>
        </array>
        <key>UIPrerenderedIcon</key>
        <true/>
    </dict>

这是我能提供的最佳答案。为我工作。

于 2013-12-07T17:16:43.943 回答
2

是的,这是一个 iOS 5 错误。我相信它会在GM中修复。

于 2011-08-10T22:42:49.693 回答
0

对我有用的是首先将“图标文件(iOS 5)”下的“图标已经包含光泽效果”布尔值更改为 NO,编译,然后将布尔值设置为 YES 并编译。

于 2012-05-27T01:16:22.447 回答
0

我在info.plist中设置了“Icon already includedgloss effects = YES”,搜索这部分:

<key>CFBundleIcons</key>
<dict>
    <key>CFBundlePrimaryIcon</key>
    <dict>
        <key>CFBundleIconFiles</key>
        <array>
            <string>myIcon.png</string>
        </array>
    </dict>
</dict>

现在,添加这 2 行:

       <key>UIPrerenderedIcon</key>
       <false/>

最后,它必须是:

<key>CFBundleIcons</key>
<dict>
    <key>CFBundlePrimaryIcon</key>
    <dict>
        <key>CFBundleIconFiles</key>
        <array>
            <string>myIcon.png</string>
        </array>
        <key>UIPrerenderedIcon</key>
        <true/>
    </dict>
</dict>
于 2012-06-12T17:41:23.330 回答