如何将单独的纵向和横向启动图像添加到 Android config.xml gap:splash

Posted

技术标签:

【中文标题】如何将单独的纵向和横向启动图像添加到 Android config.xml gap:splash【英文标题】:How to add separate Portrait and Landscape splash Images to Android config.xml gap:splash 【发布时间】:2013-06-05 23:04:59 【问题描述】:

这里的问题是如何在 PhoneGap 中允许单独的(横向和纵向)初始图像。

【问题讨论】:

【参考方案1】:

找了半天没找到满意的答案,终于搞了几个小时,终于搞定了,方法如下:为每个android size定义两个item-在头像文件上,DON 'T 放置宽度和高度属性,并在景观中放置它们。

这是我的代码,其他人可以关注:

编辑:下面的代码适用于 PHONE GAP 构建版本 2.7 到 3.0。对于较新的版本,请参阅 https://***.com/a/24002601/700111 和 http://docs.phonegap.com/en/3.5.0/config_ref_images.md.html#Icons%20and%20Splash%20Screens。

这不起作用 - 当我在纵向文件上有宽度和高度时:

<gap:splash src="res/screen/android/screen-xhdpi-n7-landscape.png" gap:platform="android" gap:density="xhdpi"   />
<gap:splash src="res/screen/android/screen-xhdpi-landscape.png" gap:platform="android" gap:density="xhdpi"   />
<gap:splash src="res/screen/android/screen-hdpi-landscape.png"  gap:platform="android" gap:density="hdpi"   />
<gap:splash src="res/screen/android/screen-mdpi-landscape.png"  gap:platform="android" gap:density="mdpi"   />
<gap:splash src="res/screen/android/screen-ldpi-landscape.png"  gap:platform="android" gap:density="ldpi"   />

这是工作代码

 <gap:splash src="res/screen/android/screen-xhdpi-portrait.png" gap:platform="android" gap:density="xhdpi"/>
<gap:splash src="res/screen/android/screen-xhdpi-n7-portrait.png" gap:platform="android" gap:density="xhdpi"/>
<gap:splash src="res/screen/android/screen-hdpi-portrait.png"  gap:platform="android" gap:density="hdpi"/>
<gap:splash src="res/screen/android/screen-mdpi-portrait.png"  gap:platform="android" gap:density="mdpi"/>
<gap:splash src="res/screen/android/screen-ldpi-portrait.png"  gap:platform="android" gap:density="ldpi"/>

<gap:splash src="res/screen/android/screen-xhdpi-n7-landscape.png" gap:platform="android" gap:density="xhdpi"   />
<gap:splash src="res/screen/android/screen-xhdpi-landscape.png" gap:platform="android" gap:density="xhdpi"   />
<gap:splash src="res/screen/android/screen-hdpi-landscape.png"  gap:platform="android" gap:density="hdpi"   />
<gap:splash src="res/screen/android/screen-mdpi-landscape.png"  gap:platform="android" gap:density="mdpi"   />
<gap:splash src="res/screen/android/screen-ldpi-landscape.png"  gap:platform="android" gap:density="ldpi"   />

使用此代码,我能够拥有不同的横向和纵向文件。

希望这对某人有所帮助!

--技术大佬

【讨论】:

我应该在哪里使用此代码?我正在使用 Phonegap 3.0.0 构建。请帮帮我。 此代码位于 config.xml 文件中。请注意,这是用于 phonegap 构建,而不是 phonegap api。常规的 phonegap api 有自己的解决方案,这里其他地方已经回答了。我不确定这是否适用于最新版本的 phonegap,但我使用的是 2.7.0。 @techdude 我不知道为什么,但这确实出于某种原因。不过,您在使用 9-patch 启动画面时有什么运气吗? 是的,如果你是专门为 android 构建的,9 补丁效果很好,但我还没有让它在 ios 上工作。主要问题是,对于这种情况,我需要能够制作像飞溅一样的全屏照片。如果您只是在屏幕中间放置一个徽标,那么 9 补丁应该适合您。不过,很高兴它起作用了。启动画面功能应该有更好的文档记录。 @jeek,适用于 3.4。感谢分享。正如之前在这些 cmets 中提到的,代码是针对 2.7 的,所以很高兴看到现在在最新版本中有一种更好、更少花哨的方法来执行此操作。文档还为 PGB 3.5 指定了另一种方法。【参考方案2】:

我使用的是 Phonegap 3.4.0,我必须添加“gap:qualifier”才能使其工作:

<gap:splash gap:density="ldpi" gap:platform="android" src="res/screen/android/screen-ldpi-landscape.png" gap:qualifier="land-ldpi" />
<gap:splash gap:density="mdpi" gap:platform="android" src="res/screen/android/screen-mdpi-landscape.png" gap:qualifier="land-mdpi" />
<gap:splash gap:density="hdpi" gap:platform="android" src="res/screen/android/screen-hdpi-landscape" gap:qualifier="land-hdpi" />
<gap:splash gap:density="xhdpi" gap:platform="android" src="res/screen/android/screen-xhdpi-landscape.png" gap:qualifier="land-xhdpi" />

【讨论】:

肖像的闪屏怎么样?!像 gap:qualifier="port-xhdpi" 吗? 看起来最新版的 PGB 原生支持横向和纵向飞溅。惊人的!当我写这篇文章时,它是一个解决方法,让它在现在非常过时的 PGB 版本上工作。查看docs.phonegap.com/en/3.5.0/… 的新文档。 原始代码仅适用于 phone gap build 2.7 到大约 3.0。我会更新答案。

以上是关于如何将单独的纵向和横向启动图像添加到 Android config.xml gap:splash的主要内容,如果未能解决你的问题,请参考以下文章

如何将位图图像横向设置为纵向

当我从纵向模式更改为横向时,按钮背景图像消失

如何在纵向和横向中自动舍入图像?

在横向模式下飞溅(启动图像)?

毕加索加载横向图像但不将纵向加载到标记的信息窗口中

资产目录中的横向与纵向背景图像