Delphi XE7 Android启动画面 - 背景颜色

3

我可以看到Delphi XE7支持Android启动画面的闪屏图像。

然而,当我选择将图像居中(看起来最好),Delphi会显示黑色周围。我更喜欢白色,因为它与应用的图像和颜色主题更相符。在设置闪屏/启动图像时,并没有出现背景颜色的选项。

我该如何更改此颜色?

4个回答

10
如果你想用图片的同一背景颜色填充黑色背景,则必须使用9patch图像。 要制作9patch PNG,请使用NinePatch(包含在Android SDK中)。
一旦你有了这些图像,请将其添加到你的项目中,并进行以下设置:
  • 闪屏平铺模式:禁用
  • 闪屏重力:中心
然后进入项目->部署:
  1. 取消勾选splash_image_def.xml(不要部署)
  2. 将你的splash_image.png重命名为splash_image_def.9.png

我尝试了一下,它按照预期工作。这个答案应该被接受为问题的答案。谢谢。 - StanE

1
如果您只想更改启动画面的背景颜色,可以修改两个文件:colors.xmlsplash_image_def.xml。您可以在项目的Android/Debug/(或Android64/Debug/)文件夹中找到它们。每次部署应用程序时,这些文件都会被重新创建,因此您需要备份它们。
Project|Deployment中,取消选中这些项,并为您制作的副本创建新条目,确保将它们部署到相同的位置。您最终将获得两个DebugRelease条目。
编辑colors.xml并添加您想要的新颜色,如下所示。
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <color name="notification_accent_color">#000000</color>
    <color name="logoblue">#0094ff</color>
</resources>

在这里我已经添加了logoblue颜色。接下来编辑splash_image_def.xml并将@android:color/black更改为@color/logoblue。它应该看起来像以下内容:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" android:opacity="opaque">
<item android:drawable="@color/logoblue" />
<item>
<bitmap
  android:src="@drawable/splash_image"
  android:antialias="true"
  android:dither="true"
  android:filter="true"
  android:gravity="center"
  android:tileMode="disabled"/>
</item>
</layer-list>

可能有更简单的方法来做这件事,但是通过一些试错,这就是我想出来的。


0

要更改默认的黑色启动画面,只需在调试文件夹中打开splash_image_def.xml文件,

并将“black”更改为“white”,如果您想将其更改为白色,就像这样:

<item android:drawable="@android:color/white" />

注意:在RAD Studios中不更改源代码、布局或任何内容,只需使用记事本编辑xml文件,保存后重新构建即可。

0

闪屏图片没有背景颜色属性,因为这应该是图片的一部分。在Android上,闪屏图片有4种不同的可能尺寸:

  • 426 x 320
  • 470 x 320
  • 640 x 480
  • 960 x 720

所以,根据您支持的设备,您应该拥有最多4个与这些尺寸相匹配的图片,背景颜色可以是您想要的任何颜色。将其设置为填充整个屏幕,并确保不使用透明度。对于闪屏重力,请选择“填充”选项。


你的图片是基于模板中默认提供的图片吗? - Jerry Dodge
我已经用自己的图片替换了它们,这些图片的尺寸与项目选项中定义的尺寸完全相同。 - Tom
我还假设你选择了“填充”选项?(我没有可用的安卓设备进行测试) - Jerry Dodge
我选择居中,因为我不想让图像的尺寸扭曲。既然有“居中”的选项,那么选择背景颜色也是合理的 :) - Tom
你可能只能使用填充选项或黑色背景,直到Embarcadero引入更改此颜色的选项。 - Jerry Dodge
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接