【问题标题】:Interface Builder doesn't show some of my resource imagesInterface Builder 没有显示我的一些资源图像
【发布时间】:2010-12-19 19:20:11
【问题描述】:

我在 Xcode 上的当前项目中添加了近 20 张 PNG 格式的图像(在适当的组资源下)。不幸的是,库窗口的媒体选项卡没有显示其中的一些。如果我创建一个 UIImageView 并从代码中设置这些不可见的图像之一,则什么都不会显示。我还尝试从 IB 添加 UIImageView 并设置其源图像。

这个问题是与图像格式相关的问题,还是我遗漏了一个小细节。

日志内容:

Could not load the "07_clock_icon.png" image referenced from a nib in the bundle

【问题讨论】:

  • 我有一个类似的问题——图像根本不会出现在 IB 中。但是,如果我手动设置图像,它可以正常工作(所以它不是 PNG 格式的问题)。

标签: cocoa cocoa-touch xcode interface-builder


【解决方案1】:

如果您将图像从 Finder 拖到 XCode 的 Resources 文件夹中,图像也应该显示在 IB 中。至少在我的设置中是这样的。

可能图像是 8 位 PNG 图像。我相信 Cocoa 要求它们是 24 位的,因为 alpha 透明度。 PNG 8 位不支持 alpha 通道,因为它更像 GIF 图像。

但是从您发布的错误来看,IB 似乎根本找不到资源。如果它没有从 XCode 的库中加载资源,这是可以理解的。

【讨论】:

  • 所有图片均为 24 位。
【解决方案2】:

假设您选择了让 XCode 将文件复制到您的项目中的选项,并且在您进行复制时 XCode 和 Finder 都没有抱怨...我想知道是否可能存在一些文件损坏?也许尝试重新创建它们或从另一个图形应用程序(甚至 Preview.app)打开并重新保存它们。

btw- 8 位 PNG 对我来说效果很好。

【讨论】:

    【解决方案3】:

    嘿嘿!我想到了。这是一个令人耳目一新的错误。因此,只需复制并替换那些未加载到项目文件夹中的图像,然后按住 Shift Command K(清理项目)。清理后它应该可以完美运行!享受吧!

    【讨论】:

    • “将这些图像复制并替换……到您的项目文件夹中”?你能澄清一下你的答案吗?
    • 抱歉,进入您的文件夹并选择未加载的图像,然后暂时将它们复制到您的桌面上。返回 Xcode 并选择未加载的图像并将其删除,然后单击 ALSO MOVE TO TRASH。然后将您放置在桌面上的图像拖到 xcode 窗口中,并确保选中“将项目复制到目标组的文件夹”然后只需在 Interface Builder 上重新添加新图像,执行清理命令,然后构建您的项目.它应该可以工作。
    【解决方案4】:

    我也遇到了同样的问题。问题出在图像上。图像有些损坏。尝试在 Photoshop 中打开图像,您会发现它无法使用 Photoshop 打开。 我通过将图像格式更改为 PNG-24 解决了这个问题,一切对我来说都很好。 希望这能解决您的问题。

    问候,

    鲁佩什·R·梅农

    【讨论】:

      【解决方案5】:

      解决这个问题有点傻,但绝对有效:

      关闭 XCode 和 Interface Builder。现在,不要打开 XCode 然后打开项目,而是在 Finder 中导航到项目并双击该项目。当您打开您的 xib 文件时,未找到的蓝色文件图像将闪烁,然后被正确的图像替换,下拉菜单将在检查器中显示您的所有图像。

      【讨论】:

        猜你喜欢
        • 2012-08-23
        • 1970-01-01
        • 1970-01-01
        • 2011-02-08
        • 2011-06-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多