2014-03-06 105 views
4

我有一个9-patch图像(splash.9.png)我想用作我的科尔多瓦(3.4.0)应用程序启动画面。如果我从Eclipse运行(Cordova)Android项目,则所有内容都应该如此,即出现闪屏,只有可拉伸区域被拉伸。但是,如果我使用命令行界面运行应用程序,则整个启动画面会拉伸/变形,就好像科尔多瓦不会将其看作9贴图像,而是作为普通的.png一样。我有以下在我的config.xml中指定:Cordova/PhoneGap 9-patch闪屏

<preference name="SplashScreen" value="splash" /> 
<preference name="SplashScreenDelay" value="5000" /> 

还有什么需要设置?任何其他线索?提前致谢!

+0

我在搜索同一个答案时发现了你的问题。我的情况 - 完全相同。如果我找到答案(嘿,如果 - 我会找到答案),我会将它发布到您的问题。 – Michael

+0

显然这是一个已知的问题。在这里找到它: https://github.com/phonegap/build/issues/20 – Michael

+0

你有没有找到这个答案?我有同样的问题! – user2063032

回答

4

好的,答案与9patch图像的有弹性的区域有关。我通过ping github问题找到了答案。一位用户向我发送了另一个有人破解它的讨论。

主要问题是大多数9patch教程解释如何拉伸按钮,但没有详细说明如何居中图像。

查找绿色/蓝色/红色图像的一半多一点通过讨论。

http://community.phonegap.com/nitobi/topics/stretched_9_patch_splash_screens_android

韦巴克副本: http://web.archive.org/web/20160405060404/http://community.phonegap.com/nitobi/topics/stretched_9_patch_splash_screens_android

对我来说,关键是看边缘。真的很难看到(至少对我来说),但你几乎无法辨认出边缘的黑色标记,这些黑色标记定义了有弹性的区域。顶部有2个小区域(绿色),左边有2个小(绿色),底部有一个长(蓝色),右边有一个长(蓝色)。

此外,还提供了一些XML以允许在垂直和水平方向使用单个图像。

因此,我发现这一个图像(与查看线条一样艰难)比我观看的所有教程更好地了解9patch的工作原理。

+0

正如我所说的,当我从Eclipse运行应用程序时,我的9贴片.png工作正常**(有弹性的区域,不可伸缩的徽标和所有内容),所以我非常确定实际上没有任何问题图像(draw9patch工具也表明一切正常)。但是,如果我从CLI运行它,初始屏幕根本不会被视为9补丁图像(我甚至可以在手机屏幕**上看到黑线**,以及整个.png,包括徽标,被拉伸)。 –

+0

链接是404s,听起来像他们会有帮助。我相信最好的做法是实际解释解决方案,而不是链接关闭... – Michael

+0

WAYBACK机器救援! 我正在更新答案以反映wayback网址。给我30秒。 – Michael

3

看起来你必须将图像命名为splash.9.png(并且在下一次构建之前做platform/android/cordova/clean)。至少对我来说至少有效。

+0

对我来说,谢谢(科尔多瓦3.6) – ndesorden

+0

它也适用于我。经过大量搜索后,此答案和http://community.phonegap.com/nitobi/topics/stretched_9_p​​atch_splash_screens_android#reply_13888005帮助我解决了这个问题。 –

+1

干净的CLI别名是'cordova clean android' – daserge