我们有一个单声道Android应用程序,目前正在显示一个漂亮的闪屏,屏幕上有一个PNG标志。
然而,屏幕背景是黑色的,这意味着徽标 - 具有透明背景 - 并不能很好地显示。
我的主题目前设置如下:
<resources>
<style name="Theme.Splash" parent="android:Theme">
<item name="android:windowBackground">@drawable/splash</item>
<item name="android:windowNoTitle">true</item>
</style>
</resources>
'splash.png'是我的泼水徽标图片。
使用
设置背景<item name="android:background">@color/white</item>
覆盖启动图像背景。
是否可以将主题定义为具有白色背景,并在其上方使用splash.png?
另一种方法是让我们修改slpash.png以获得白色背景,而不是透明,但如果可能,我想避免这种情况。
答案 0 :(得分:0)
使用ImageView并将徽标设置为不容易,您可以根据需要设置容器布局的背景颜色吗?
...也许你可以制作一个xml文件,其中包含一个由背景组成的分层/级别列表drawable,并将徽标作为两个单独的级别/图层,并将该xml文件作为drawable应用于您的样式背景/ windowbackground?
答案 1 :(得分:0)
在drawable splash xml中,使用Layer-List包含每个项目,然后将背景设置为一个项目,将徽标设置为另一个项目。这就是我至少做过的事情:)
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="@color/backgroundb" />
</shape>
</item>
<item>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:gravity="center" android:src="@mipmap/launchicon" />
</item>
你可能会有点迟到,我已经意识到这个问题有多久了大声笑