二进制XML Line#0膨胀异常?

时间:2017-12-11 09:37:14

标签: android android-layout android-xml android-drawable

我每次尝试运行我的应用程序时都会收到此错误,我不知道为什么即时尝试为我的应用程序创建一个基本的欢迎屏幕,然后转换到我的主页,但目前欢迎屏幕没有加载和应用程序只是在运行项目时说“无法运行应用程序”。我已经尝试过对项目进行干净的构建和重建以及其他人已经拥有但仍然没有运气的其他修复。

下面我发布了logcat在运行时提供的错误。

Error: FATAL EXCEPTION: main
                                                                                 Process: com.example.ross.moviepickerapp, PID: 21507
                                                                                 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ross.moviepickerapp/com.example.ross.moviepickerapp.MainActivity}: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class android.widget.RelativeLayout
                                                                                     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3319)
                                                                                     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415)
                                                                                     at android.app.ActivityThread.access$1100(ActivityThread.java:229)
                                                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821)
                                                                                     at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                                     at android.os.Looper.loop(Looper.java:148)
                                                                                     at android.app.ActivityThread.main(ActivityThread.java:7331)
                                                                                     at java.lang.reflect.Method.invoke(Native Method)
                                                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
                                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
                                                                                  Caused by: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class android.widget.RelativeLayout
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:551)
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:429)
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:380)
                                                                                     at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287)
                                                                                     at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139)
                                                                                     at com.example.ross.moviepickerapp.MainActivity.onCreate(MainActivity.java:13)
                                                                                     at android.app.Activity.performCreate(Activity.java:6904)
                                                                                     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)
                                                                                     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3266)
                                                                                     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415) 
                                                                                     at android.app.ActivityThread.access$1100(ActivityThread.java:229) 
                                                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821) 
                                                                                     at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                                     at android.os.Looper.loop(Looper.java:148) 
                                                                                     at android.app.ActivityThread.main(ActivityThread.java:7331) 
                                                                                     at java.lang.reflect.Method.invoke(Native Method) 
                                                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
                                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 
                                                                                  Caused by: android.view.InflateException: Binary XML file line #0: Error inflating class android.widget.RelativeLayout
                                                                                     at android.view.LayoutInflater.createView(LayoutInflater.java:657)
                                                                                     at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58)
                                                                                     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:706)
                                                                                     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:774)
                                                                                     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716)
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:380) 
                                                                                     at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287) 
                                                                                     at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) 
                                                                                     at com.example.ross.moviepickerapp.MainActivity.onCreate(MainActivity.java:13) 
                                                                                     at android.app.Activity.performCreate(Activity.java:6904) 
                                                                                     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136) 
                                                                                     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3266) 
                                                                                     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415) 
                                                                                     at android.app.ActivityThread.access$1100(ActivityThread.java:229) 
                                                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821) 
                                                                                     at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                                     at android.os.Looper.loop(Looper.java:148) 
                                                                                     at android.app.ActivityThread.main(ActivityThread.java:7331) 
                                                                                     at java.lang.reflect.Method.invoke(Native Method) 
                                                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
                                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 
                                                                                  Caused by: java.lang.reflect.InvocationTargetException
                                                                                     at java.lang.reflect.Constructor.newInstance(Native Method)
                                                                                     at android.view.LayoutInflater.createView(LayoutInflater.java:631)
                                                                                     at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58) 
                                                                                     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:706) 
                                                                                     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:774) 
                                                                                     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716) 
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:498) 
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:380) 
                                                                                     at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287) 
                                                                                     at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) 
                                                                                     at com.example.ross.moviepickerapp.MainActivity.onCreate(MainActivity.java:13) 
                                                                                     at android.app.Activity.performCreate(Activity.java:6904) 
                                                                                     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136) 
                                                                                     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3266) 
                                                                                     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415) 
                                                                                     at android.app.ActivityThread.access$1100(ActivityThread.java:229) 
                                                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821) 
                                                                                     at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                                     at android.os.Looper.loop(Looper.java:148) 
                                                                                     at android.app.ActivityThread.main(ActivityThread.java:7331) 
                                                                                     at java.lang.reflect.Method.invoke(Native Method) 
                                                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
                                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 
                                                                                  Caused by: android.content.res.Resources$NotFoundException: Resource "com.example.ross.moviepickerapp:drawable/welcomebackground" (7f060064) is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f060064 a=-1 r=0x7f060064}
                                                                                     at android.content.res.Resources.loadDrawableForCookie(Resources.java:4245)
                                                                                     at android.content.res.Resources.loadDrawable(Resources.java:4152)
                                                                                     at android.content.res.Resources.loadDrawable(Resources.java:4002)
                                                                                     at android.content.res.TypedArray.getDrawable(TypedArray.java:886)
                                                                                     at android.view.View.<init>(View.java:4249)
                                                                                     at android.view.ViewGroup.<init>(ViewGroup.java:591)
                                                                                     at android.widget.RelativeLayout.<init>(RelativeLayout.java:249)
                                                                                     at android.widget.RelativeLayout.<init>(RelativeLayout.java:245)
                                                                                     at android.widget.RelativeLayout.<init>(RelativeLayout.java:241)
                                                                                     at java.lang.reflect.Constructor.newInstance(Native Method) 
                                                                                     at android.view.LayoutInflater.createView(LayoutInflater.java:631) 
                                                                                     at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58) 
                                                                                     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:706) 
                                                                                     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:774) 
                                                                                     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716) 
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:498) 
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
                                                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:380) 
                                                                                     at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287) 
                                                                                     at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) 
                                                                                     at com.example.ross.moviepickerapp.MainActivity.onCreate(MainActivity.java:13) 
                                                                                     at android.app.Activity.performCreate(Activity.java:6904) 
                                                                                     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136) 
                                                                                     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3266) 
                                                                                     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415) 
                                                                                     at android.app.ActivityThread.access$1100(ActivityThread.java:229) 
                                                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821) 
                                                                                     at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                                     at android.os.Looper.loop(Looper.java:148) 
                                                                                     at android.app.ActivityThread.main(ActivityThread.java:7331) 
                                                                                     at java.lang.reflect.Method.invoke(Native Method) 
                                                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
                                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 

以下是我的MainActivity代码:

package com.example.ross.moviepickerapp;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.app.AppCompatDelegate;

public class MainActivity extends AppCompatActivity 

{

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);
    setContentView(R.layout.welcome_screen);
}
}

这是我的XMl代码:

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/welcome_screen"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.ross.moviepickerapp.MainActivity"
    android:background="@drawable/welcomebackground">
    <LinearLayout
        android:layout_gravity="center"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        >
        <TextView
            android:layout_marginTop="150dp"
            android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/welcome_to"
            android:textSize="40sp"
            android:textStyle="italic|bold"
            android:textColor="@color/colorPrimary"
            />
        <TextView
            android:layout_marginTop="50dp"
            android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/movie_picker"
            android:textSize="30sp"
            android:textStyle="italic|bold"
            android:textColor="@color/colorPrimaryDark"
            />

        </LinearLayout>

</RelativeLayout>

有人可以帮帮我吗?

3 个答案:

答案 0 :(得分:0)

你可能有问题

BindingContext
xml文件中的

。尝试对此行进行注释并清理项目并运行。

  

使用新的&gt;创建新的Android活动空活动,看看它是如何运作的。

答案 1 :(得分:0)

Caused by: android.content.res.Resources$NotFoundException: Resource "com.example.ross.moviepickerapp:drawable/welcomebackground" (7f060064) is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f060064 a=-1 r=0x7f060064}

您需要检查此文件。

您可以通过Android Studio添加资源,转到应用&gt; res&gt; drawable&gt;“右键单击”&gt;新&gt;“图片资源”或“矢量资源”

答案 2 :(得分:0)

我不知道它是否与带有compiledSdkVersion和targetSdkVersion的android库版本有关。以前我使用时出错:

  1. compileSdkVersion 26
  2. targetSdkVersion 26
  3. 'com.android.support:appcompat-v7:26.1.0'
  4. 'com.android.support:design:26.1.0'
  5. 然后我改为更新的版本,它起作用了:

    1. compileSdkVersion 27
    2. targetSdkVersion 27
    3. 'com.android.support:appcompat-v7:27.0.2'
    4. 'com.android.support:design:27.0.2'
    5. 我希望这会有所帮助