【发布时间】:2014-04-08 14:34:23
【问题描述】:
我使用here 描述的基于主题的解决方案,例如,
在我的应用程序中显示启动画面。
这是我的 background_launch.xml:
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/launch_image"
android:tileMode="disabled" />
当我将launch_image 设为 png 时,一切正常。但是如果我使用@drawable/layerlist 而不是@drawable/launch_image,应用程序就会崩溃。
layerlist.xml 是:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<bitmap
android:gravity="center"
android:src="@drawable/launch_image"
android:tileMode="disabled" >
</bitmap>
</item>
</layer-list>
应用程序崩溃并显示以下日志(跳过了几行):
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.glu.pathlight/com.glu.pathlight.JSFinalNativeActivity}: android.content.res.Resources$NotFoundException: File res/drawable/background_launch.xml from drawable resource ID #0x7f020000
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
...
Caused by: android.content.res.Resources$NotFoundException: File res/drawable/background_launch.xml from drawable resource ID #0x7f020000
at android.content.res.Resources.loadDrawable(Resources.java:2096)
at android.content.res.Resources.getDrawable(Resources.java:700)
... 11 more
Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #18: <bitmap> requires a valid src attribute
at android.graphics.drawable.BitmapDrawable.inflate(BitmapDrawable.java:571)
at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:937)
at android.graphics.drawable.Drawable.createFromXml(Drawable.java:877)
at android.content.res.Resources.loadDrawable(Resources.java:2092)
... 22 more
我的资源有什么问题?
【问题讨论】:
-
这个问题具有误导性,您是在询问使用资源并将图像嵌入到图层列表中,而不是询问如何在屏幕内居中显示图像
-
<bitmap> requires a valid src attribute因为您在src中传递了layer-list<bitmap>而不是图像可绘制名称 -
问题是没有找到background_launch.xml。什么资源引用它?也许你需要清理你的项目并重新构建它。
-
@3amoura 你可能是对的。一方面是关于使用资源的问题,但另一方面它解决了我面临的一个特殊情况。随意为这个问题建议另一个标题,我准备更改它以供将来参考。
标签: android xml android-layout android-resources