将位图重力设置为底部会从奥利奥的屏幕图层列表中消失



我将启动视图作为xml文件,如下所示。 使用目标版本作为API 19(KitKat(,这段代码可以很好地工作,但是一旦我将目标更改为奥利奥,底部一半的splash_text就会离开屏幕。 为什么会发生这种情况,我该如何解决? 针对奇巧,飞溅文字恰好在屁股处。我试图在位图上添加layout_margin,但它也没有帮助我。

<?xml version="1.0" encoding="utf-8" ?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" android:opacity="opaque">
<item>
<color android:color="@color/background_material_light"/>
</item>
<item>
<bitmap
android:src="@drawable/ic_launcher"
android:tileMode="disabled"
android:gravity="center"/>
</item>
<item>
<bitmap 
android:src="@drawable/splash_text"
android:tileMode="disabled" 
android:gravity="bottom"        
/>    
</item>  
</layer-list>

当您设置位图的重力时,会发生这种情况。这就像位图元素的属性的行为将其推送到屏幕之外一样。因此,通过在 item 元素上添加一些边距以将其推送到屏幕内。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/colorPrimaryDark" />
<item android:top="25dp">
<bitmap
android:gravity="top"
android:src="@drawable/your_image" />
</item>
<item android:bottom="75dp">
<bitmap
android:gravity="bottom"
android:src="@drawable/your_image" />
</item>
</layer-list>

将以下主题添加到您的应用程序中,它将正常工作。

android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

最新更新