iPhone Splash:“Default.png”显示在模拟器上,但不显示在iPhone上

时间:2010-02-10 01:40:10

标签: iphone objective-c xcode

我正试图给我的iPhone一个闪屏。

我在我的资源组中放置了 Default.png 。当我运行模拟器时,它会按预期显示,但是当我将应用程序安装到iPhone时,不会显示闪屏。

有谁知道这个问题的原因/解决方案是什么?

谢谢!

9 个答案:

答案 0 :(得分:12)

如果Default.png未显示在设备中,但模拟器...则尝试以下操作。

  1. 请务必删除 XCode中可能在几次错误尝试中创建的任何“default.png”,“Default.png”,“Default.PNG”等。并在Finder中
  2. 删除iPhone / iPod / iPad上的应用程序
  3. 在Xcode Build-> Clean All Targets
  4. 在Finder中转到您的项目并找到构建文件夹,删除其中的所有文件夹。
  5. 创建一个新的Default.png,如下例所示:
    • 将iPhone / iPod连接到Mac。
    • 在iPhone上启动您的应用
    • 在XCode启动管理器(Window-> Organizer)
    • 选择已连接的设备
    • 您应该会看到一个标签“Screenshots”
    • 按下“捕获”按钮,制作应用程序的屏幕截图
    • 按“As Default Image ...”按钮(这将创建Default.png并将其添加到您的项目中,这是一个非常方便的事情)
  6. 再次构建并运行。它现在应该工作
  7. 由于格式错误(可能是320宽度和480高度(是的,这意味着您可以在default.png中看到状态栏)或者您可能已将第一个文件命名为default.png(WHICH),可能会出现问题IS WRONG),它在模拟器中工作,因为它似乎不区分大小写,但当它被复制到iPhone时,它将无法找到,因为它区分大小写。因此它仍然会在build文件夹中(我认为)导致下一个正确命名的Default.png不会覆盖此iPhone构建文件夹中的旧default.png,所以看起来似乎无法解决问题(原因)你在项目中看到Default.png,但在构建中它仍然是default.png)。 至少这是我现在的理解(之后),因为对我而言,即使我一次又一次地尝试其他人的不同解决方案,它根本不想工作。 因此,从我的角度来看,这种不同的文件处理(大小写/不区分大小写)是一个混乱,您可以通过简单地清除所有内容并尝试使用组织器生成新的Default.png(在清除所有内容之后)来解决。

    如果您想要一个不同的/修改过的闪屏。用photoshop / gimp / whatever打开生成的Default.png并编辑它。

答案 1 :(得分:10)

确保您的图片为480x320像素,并放置在顶层的应用程序中。框架将显示此图像,直到您的初始视图已加载并准备好显示。

如果您看到黑色背景,那么有些不对劲,但是如果您只是看到应用程序的初始视图,那么很高兴您已设法启动应用程序并准备好及时使用。

如果你真的,真的希望用户看到你的启动画面,那么在你呈现初始视图之前在你的应用程序中添加一个延迟来减慢你的启动

文件名必须为Default.png(使用大写字母D)。此外,还要对整个项目进行清理/重建,以确保该项目中包含该文件的最新版本。检查文件系统上的文件名,它可能在XCode中显示不同。

答案 2 :(得分:3)

确保将其添加到捆绑包中。为此,请在XCode左侧导航面板中选择图像,获取文件信息,并确保启用目标的复选框。还要确保文件真的是一个png,而不仅仅是这样命名。

答案 3 :(得分:3)

只需检查拼写...我想你使用“default.png”而不是“Default.png”。只需将“d”作为Default.png的“D”。

答案 4 :(得分:2)

另一个可能的问题是Default.png,实际上是重命名为.png的Default.jpg。 这将在模拟器上正常工作,但不能在设备上运行。

答案 5 :(得分:2)

如果您使用的是iphone 4,还需要添加一个 Default@2x.png,尺寸640 * 960像素 这就是为我解决的问题。

此命名约定适用于您应用中的所有图片。

答案 6 :(得分:0)

我有类似的问题,但我的图像显示为灰色或灰色条。事实证明,PNG图像上有一个alpha通道,模拟器没有问题,但iphone不会显示。我在Mac上预览时打开了图像,并在没有Alpha通道的情况下重新保存了它们,一切正常。不知道这是不是你的问题,但值得一试。

答案 7 :(得分:0)

我知道这是旧的,但我有完全相同的问题。图像不会显示在设备上,但在模拟器上可以正常显示。我注意到我的项目有很多非常奇怪的东西,比如我的plist中有3-4个“Default.png”图像,并且在不同的库中有一些其他的“Default.png”图像和我没有的东西通知。

我尝试了一切让它们出现,但是在创建一个新项目并将启动图像设置为我尝试使用的完全相同的图像后,它们工作得很好。我唯一能想到的是项目被破坏的地方,并且无法弄清楚这些启动图像的作用。

答案 8 :(得分:0)

将初始文件保存为default.png会导致同样的问题,因此应该是Default.png(正常)和Default@2x.png(视网膜)图像。

转到您的项目plist并添加一行“Launch image” - 使用不同的文件名。使用此名称保存图像(并为视网膜添加@ 2x.png)。事后应该没事。

此外,如果您已在设备上安装该应用,请从设备中删除该应用(因为之前的安装可能不会影响更改)。