我创建了一个兼容iPhone和iPad的应用程序。因为它基于HTML(PhoneGap),所以App本身对于两个设备都是相同的(HTML可以很好地扩展!)。 但启动后,启动屏幕图像不会填满iPad上的显示。
在我的Resorces文件夹中,只有iPhone的启动图像对于iPad来说很小,我该如何为iPad添加另一张?
答案 0 :(得分:9)
您需要在应用程序的info.plist中指定启动图像文件(UILaunchImageFile
)属性:
例如,如果您将密钥UILaunchImageFile~ipad
的值设置为iPad
,则您的文件名应为iPad-Portrait.png
和iPad-Landscape.png
。您可以类似地为iPhone更改它,或使用iPhone的默认(Default.png
)。
答案 1 :(得分:1)
嘿,我找到了解决这个问题的方法,使用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'函数。
答案 2 :(得分:1)
您需要如上所述指定启动图像,还要检查以确保在构建之后启动图标位于正确的位置。完成PhoneGap项目的构建/运行后,检查xcode中的Resources文件夹。我发现我的其他启动屏幕和应用程序图标尚未在构建中移动。一旦我手动复制它们并重新构建,所有图标和启动屏幕就像ipad和iphone一样工作。
答案 3 :(得分:1)
我遇到了同样的问题。我尝试了一大堆解决方案,这些解决方案在这里和网上提出。没有任何效果。我的问题是我正在使用部署目标< iOS 3.2不支持在帖子中描述的Info.plist设置 Mo。。
不幸的是,Apple在Info.plist / splash屏幕上有几个文档。这个帮助:
您可以像这样设置项目: 在Info.plist中不进行“启动图像”设置。只需添加以下图片:
Default.png
- >这是(大)iPad启动图像
Default-Landscape.png
- >这是(大风景)iPad启动图像
Default-Portrait.png
- >这是(大人像)iPad启动画面
Default~iphone.png
- >这是(小)iPhone启动图像
支持高分辨率显示器:
Default@2x~iphone.png
- > - >这是(视网膜)iPhone启动图像
答案 4 :(得分:0)
您需要在资源中放置名为“Default.png”的文件 - splash文件夹。这将删除它,是的,我知道这听起来很愚蠢,因为它是一个IPAD应用程序,但如果你不想触摸C代码,只需添加或替换该文件。它被称为即使它是一个IPAD(意思是,实际上default.png是为了iphone,但是......好吧,只是试试吧!)
答案 5 :(得分:0)
我按照有关将UILaunchImageFile密钥添加到.plist文件http://developer.apple.com/library/ios/#documentation/General/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html的文档。
这样可行,但您必须记住将ipad图像拖放到XCode中。只需在文件浏览器中添加文件就无法使用,您必须使用Xcode!