Моя стартовая активность имеет тему @style/AppTheme.Launcher.
<layer-list xmlns:android = "http://schemas.android.com/apk/res/android" android:opacity = "opaque">
<item android:drawable = "@color/colorPrimary" />
<item>
<bitmap android:src = "@drawable/my_logo" android:gravity = "center" />
</item>
</layer-list>
Когда моя деятельность начинается, я получаю сообщение об ошибке:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: my.package, PID: 23108
java.lang.RuntimeException: Unable to start activity ComponentInfo{ru.package/my.package.MainActivity}: android.content.res.Resources$NotFoundException: Drawable my.package:drawable/launch_screen with resource ID #0x7f060059
<resources>
...
<style name = "AppTheme.Launcher" parent = "AppTheme">
<item name = "android:windowBackground">@drawable/launch_screen</item>
</style>
</resources>
Моя деятельность начинается с этой темы.
@MayurPatel обновлен
Вместо:
<item>
<bitmap android:src = "@drawable/my_logo" android:gravity = "center" />
</item>
попробуйте:
<item>
<bitmap app:srcCompat = "@drawable/my_logo" android:gravity = "center" />
</item>
или:
<item
app:srcCompat = "@drawable/my_logo" android:gravity = "center" />
Вы уверены, что launch_screen.xml находится в папке res/drawable в вашем основном пакете?
Вы создавали разные папки, например drawable-v21?
Сообщение об ошибке:
Resources$NotFoundException: Drawable my.package:drawable/launch_screen
если бы launch_screen.xml был там, где он должен быть, ваше приложение будет работать нормально.
В крайнем случае: очистите и перестройте свой проект.
Если я поставлю <item android:drawable = "@drawable/my_logo" /> вместо <item><bitmap android:src = "@drawable/my_logo" android:gravity = "center" /></item>, все будет в порядке, кроме растянутого изображения
Если я поставлю my_logo.png вместо my_logo.xml все ок
Вы можете использовать drawable для добавления образа в layer - list. попробуйте это, надеюсь, это поможет вам. Если нет, дайте мне знать.
<layer-list
xmlns:android = "http://schemas.android.com/apk/res/android">
<item android:drawable = "@color/colorPrimary" />
<item android:drawable = "@drawable/home_background" />
</layer-list>
Это не работает. Там написано здесьЧтобы избежать масштабирования, в следующем примере используется элемент <bitmap> с центрированной гравитацией.
Разместите свой XML-файл с дизайном