фон можно рисовать для использования списка слоев, не обертывающего родительский экран

Я пытаюсь воссоздать заставку, чтобы она соответствовала стандарту Google. Я попытался создать фон для экрана-заставки, который я буду устанавливать в самой теме. Но я ищу способ сделать растровое изображение соответствующим родителю.

Ниже приведен мой код для рисования: splash_screen_bg.xml

 <?xml version="1.0" encoding="utf-8"?> 
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
 <item android:gravity="center">
 <bitmap android:src="@drawable/logo_show" android:gravity="center" />
 </item>
 </layer-list>

Вот код, в котором я устанавливаю это рисование в качестве фона действия:

 <style name="SpTheme" parent="SearchActivityTheme.NoActionBar"> 
 <item name="colorPrimaryDark">@color/colorAccentXDark</item>
 <item name="android:alertDialogTheme">@style/AlertDialogTheme</item> 
 <item name="android:windowBackground">@drawable/splash_screen_bg</item>
 </style>

person Cistem    schedule 20.01.2017    source источник


Ответы (1)


Вы не можете масштабировать изображение в растровом формате. Это не ImageView, поэтому у него нет атрибута scaleType. Ваше изображение будет масштабироваться в зависимости от папки, в которую вы его поместили (drawable-xdpi, drawable-nodpi,...). Вы просто можете установить цвет заливки фона на то, что вам нужно.

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 

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

<item android:gravity="center">
    <bitmap android:src="@drawable/logo_show" android:gravity="center" />
</item>
</layer-list>
person Ekalips    schedule 20.01.2017
comment
Спасибо, это решило мою проблему. Мне пришлось создавать изображения для разных размеров экрана и размещать их в соответствующих папках (drawable-xdpi, drawable-nodpi,...) - person Cistem; 25.01.2017