我创建了一个与 iPhone 和 iPad 兼容的应用程序。因为它基于 HTML (PhoneGap),所以应用程序本身对于两种设备都是相同的(HTML 可以很好地扩展!)。但是启动屏幕图像不会在启动时填满 iPad 上的显示。
在我的 Resorces 文件夹中只有 iPhone 启动图像对于 iPad 来说太小了,如何为 iPad 添加另一个图像?
我创建了一个与 iPhone 和 iPad 兼容的应用程序。因为它基于 HTML (PhoneGap),所以应用程序本身对于两种设备都是相同的(HTML 可以很好地扩展!)。但是启动屏幕图像不会在启动时填满 iPad 上的显示。
在我的 Resorces 文件夹中只有 iPhone 启动图像对于 iPad 来说太小了,如何为 iPad 添加另一个图像?
您需要UILaunchImageFile
在应用程序的 info.plist 中指定启动图像文件 ( ) 属性:
例如,如果您将键的值设置为UILaunchImageFile~ipad
,则iPad
您的文件名应该是iPad-Portrait.png
and iPad-Landscape.png
。您可以为 iPhone 类似地更改它,或为 iPhone 使用默认 ( Default.png
)。
这是在信息属性列表文件中定义的。
嘿,我找到了解决此问题的方法,使用 phonegap 1.9 将此代码放入您的应用程序委托中应该可以解决问题:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
UIImage* image = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Default-Portrait" ofType:@"png"]];
imageView = [[UIImageView alloc] initWithImage:image];
[image release];
imageView.tag = 1;
[window addSubview:imageView];
[imageView release];
}
这需要在 [ super applicationDidFinishLaunching:application ] 调用之后进入 'applicationDidFinishLaunching' 函数。
您需要如上所述指定启动图像,但还要检查以确保在构建后您的启动图标位于正确的位置。在对 PhoneGap 项目进行构建/运行后,检查 xcode 中的 Resources 文件夹。我发现我的其他启动屏幕和应用程序图标没有在 build 中移动到那里。一旦我手动复制它们并重新构建,所有图标和启动屏幕都可以正常工作,因为它们应该适用于 ipad 和 iphone。
我有同样的问题。我尝试了一大堆解决方案,这些解决方案都是在这里和网上提出的。没有任何效果。我的问题是我使用的部署目标 < iOS 3.2 不支持他的帖子中描述的 Info.plist 设置Mo .。
不幸的是,Apple 有几个关于 Info.plist / splash screen 问题的文档。这个帮助:
您像这样设置项目:在 Info.plist 中不进行“启动图像”设置。只需添加以下图像:
Default.png
--> 这是(大)iPad 初始图像
Default-Landscape.png
--> 这是(大风景)iPad 启动画面
Default-Portrait.png
--> 这是(大肖像)iPad 初始图像
Default~iphone.png
--> 这是(小)iPhone 启动画面
要支持高分辨率显示器:
Default@2x~iphone.png
--> --> 这是(视网膜)iPhone 启动画面
您需要在资源中放置一个名为“Default.png”的文件 - 启动文件夹。这将删除它,是的,我知道这听起来很傻,因为它是一个 IPAD 应用程序,但如果您不想接触 C 代码,只需添加或替换该文件。即使它是 IPAD,它也会被调用(意思是,实际上 default.png 是用于 iphone 的,但是……不管怎样,试试吧!)
我遵循了有关将 UILaunchImageFile 键添加到 .plist 文件http://developer.apple.com/library/ios/#documentation/General/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html的文档。
这可行,但您必须记住将您的 ipad 图像拖放到 XCode 中。只是在文件浏览器中添加文件是不行的,必须使用Xcode!