【问题标题】:Android splash screen: how to make it centered?Android启动画面:如何使其居中?
【发布时间】: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

我的资源有什么问题?

【问题讨论】:

  • 这个问题具有误导性,您是在询问使用资源并将图像嵌入到图层列表中,而不是询问如何在屏幕内居中显示图像
  • &lt;bitmap&gt; requires a valid src attribute 因为您在 src 中传递了 layer-list &lt;bitmap&gt; 而不是图像可绘制名称
  • 问题是没有找到background_launch.xml。什么资源引用它?也许你需要清理你的项目并重新构建它。
  • @3amoura 你可能是对的。一方面是关于使用资源的问题,但另一方面它解决了我面临的一个特殊情况。随意为这个问题建议另一个标题,我准备更改它以供将来参考。

标签: android xml android-layout android-resources


【解决方案1】:

把这个:

<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>

在您的 background_launch.xml 中,而不是尝试在 android:src 中为 &lt;bitmap\&gt; 引用状态列表

状态列表不是位图——这是错误告诉你的。

【讨论】:

    【解决方案2】:

    检查您是否已将 android:src="@drawable/launch_image" 更改为 android:src="@drawable/layerlist"。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-27
      • 1970-01-01
      • 2021-10-01
      • 1970-01-01
      • 2021-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多