Двоичная строка XML #0 раздувает исключение?

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

Ниже я опубликовал ошибку, которую 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 ответа

Я не знаю, связано ли это с версией библиотеки Android с compiledSdkVersion и targetSdkVersion. Ранее я получил ошибку при использовании:

  1. compileSdkVersion 26
  2. targetSdkVersion 26
  3. 'Com.android.support:appcompat-v7:26.1.0'
  4. 'Com.android.support:design:26.1.0'

Затем я перешел на более новую версию, и это сработало:

  1. compileSdkVersion 27
  2. targetSdkVersion 27
  3. 'Com.android.support:appcompat-v7:27.0.2'
  4. 'Com.android.support:design:27.0.2'

Я надеюсь, это поможет

У вас могут быть проблемы с линией

android:background="@drawable/welcomebackground" 

в файле XML. Попробуйте прокомментировать эту строку, очистить проект и запустить.

Создайте новое действие для Android, используя новое> пустое действие, и посмотрите, как это работает.

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, перейдите в приложение>res>drawable>"Правый клик"> "Создать"> "Актив изображения" или "Векторный актив"

Другие вопросы по тегам