【发布时间】:2014-12-28 15:03:48
【问题描述】:
我可以看到 Delphi XE7 带有对 Android 的启动/启动图像支持。
但是,当我选择将图像居中(看起来最好)时,Delphi 会在其周围显示黑色。我更喜欢白色,因为它更适合应用程序的图像和颜色主题。您设置启动画面/启动图像的背景颜色似乎没有选项。
我怎样才能改变这种颜色?
【问题讨论】:
标签: android delphi delphi-xe7
我可以看到 Delphi XE7 带有对 Android 的启动/启动图像支持。
但是,当我选择将图像居中(看起来最好)时,Delphi 会在其周围显示黑色。我更喜欢白色,因为它更适合应用程序的图像和颜色主题。您设置启动画面/启动图像的背景颜色似乎没有选项。
我怎样才能改变这种颜色?
【问题讨论】:
标签: android delphi delphi-xe7
如果您想用与图像相同的背景颜色填充黑色背景,您必须使用 9patch 图像。要制作 9patch png,请使用 NinePatch(包含在 android sdk 中)
一旦你有图像,添加到你的项目并像这样设置:
然后进入项目->部署:
【讨论】:
启动图像没有背景颜色属性,因为它应该是图像的一部分。 Android 上的 Splash 图片有 4 种不同的可能尺寸:
因此,根据您支持的设备,您最多应该有 4 张与这些尺寸匹配的图像,背景颜色可以随意选择。将其设置为填满整个屏幕,并确保您没有使用透明度。对于Splash Gravity,选择fill 选项。
【讨论】:
Fill? (我没有可用于测试的 android)
如果你只是想改变闪屏的背景颜色,你可以修改两个文件。 colors.xml 和 splash_image_def.xml。您可以在项目的Android/Debug/(或Android64/Debug/)文件夹中找到这些文件。每次部署应用程序时都会重新创建这些文件,因此您需要制作它们的备份副本。
在Project|Deployment 中,取消勾选这些项目并为您制作的副本创建新条目,确保将它们部署到相同位置。您最终会得到两个 Debug 和 Release 条目。
编辑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>
可能有更简单的方法可以做到这一点,但这是我经过反复试验得出的结论。
【讨论】:
要更改默认的黑色启动画面,只需打开 splash_image_def.xml 在调试文件夹中,
如果你想把它改成白色,把“黑色”改成白色,像这样
<item android:drawable="@android:color/white" />
注意:在源代码、布局或 RAD Studios 中的任何内容都没有更改的情况下构建它。只需用记事本编辑文件 xml,保存,然后重新生成。
【讨论】: