Java 错误膨胀类 android.support.design.widget.CoordinatorLayoute
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/34477067/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Error inflating class android.support.design.widget.CoordinatorLayoute
提问by bob afro
I am trying to run my application and I keep getting the error listed in the title. I've read around and people have said to try changing theme to an AppCombat theme but that does not seem to be working. Here are my errors I am getting:
我正在尝试运行我的应用程序,但我不断收到标题中列出的错误。我已经阅读过,人们说尝试将主题更改为 AppCombat 主题,但这似乎不起作用。这是我遇到的错误:
Process: com.example.jmeyer27.crazytiles, PID: 3924
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.jmeyer27.crazytiles/com.example.jmeyer27.crazytiles.GameActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class android.support.design.widget.CoordinatorLayoute
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
at android.app.ActivityThread.access0(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5221)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class android.support.design.widget.CoordinatorLayoute
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:757)
at android.view.LayoutInflater.inflate(LayoutInflater.java:482)
at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:256)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109)
at com.example.jmeyer27.crazytiles.GameActivity.onCreate(GameActivity.java:20)
at android.app.Activity.performCreate(Activity.java:5933)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)?
at android.app.ActivityThread.access0(ActivityThread.java:144)?
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)?
at android.os.Handler.dispatchMessage(Handler.java:102)?
at android.os.Looper.loop(Looper.java:135)?
at android.app.ActivityThread.main(ActivityThread.java:5221)?
at java.lang.reflect.Method.invoke(Native Method)?
at java.lang.reflect.Method.invoke(Method.java:372)?
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)?
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)?
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.design.widget.CoordinatorLayoute" on path: DexPathList[[zip file "/data/app/com.example.jmeyer27.crazytiles-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
at android.view.LayoutInflater.createView(LayoutInflater.java:571)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
at android.view.LayoutInflater.inflate(LayoutInflater.java:482)?
at android.view.LayoutInflater.inflate(LayoutInflater.java:414)?
at android.view.LayoutInflater.inflate(LayoutInflater.java:365)?
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:256)?
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109)?
at com.example.jmeyer27.crazytiles.GameActivity.onCreate(GameActivity.java:20)?
at android.app.Activity.performCreate(Activity.java:5933)?
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)?
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)?
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)?
at android.app.ActivityThread.access0(ActivityThread.java:144)?
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)?
at android.os.Handler.dispatchMessage(Handler.java:102)?
at android.os.Looper.loop(Looper.java:135)?
at android.app.ActivityThread.main(ActivityThread.java:5221)?
at java.lang.reflect.Method.invoke(Native Method)?
at java.lang.reflect.Method.invoke(Method.java:372)?
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)?
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)?
Suppressed: java.lang.ClassNotFoundException: android.support.design.widget.CoordinatorLayoute
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
... 22 more
XML FILE: activity_game.xml
XML 文件:activity_game.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayoute
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context=".GameActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/Theme.AppCompat.Light.DarkActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/ThemeOverlay.AppCompat.Dark" />
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_game" />
</android.support.design.widget.CoordinatorLayoute>
Any help would be appreciated!
任何帮助,将不胜感激!
采纳答案by Mohammad Tauqir
Replace
代替
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/Theme.AppCompat.Light.DarkActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/ThemeOverlay.AppCompat.Dark" />
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_game" />
With
和
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/Theme.AppCompat.Light.DarkActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/ThemeOverlay.AppCompat.Dark" />
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_game" />
</android.support.design.widget.CoordinatorLayout>
Also add compile 'com.android.support:design:22.2.1'
in build.gradle
还要添加compile 'com.android.support:design:22.2.1'
build.gradle
回答by Karakuri
You have a spelling error in your layout file. Change CoordinatorLayoute
to CoordinatorLayout
.
您的布局文件中有拼写错误。更改CoordinatorLayoute
为CoordinatorLayout
。
回答by E J Chathuranga
And you have several options,
你有几个选择,
Change it into AppCompatActivity if you use Activity. Probably it becomes the error when it is Activity
For those using AndroidX Dependency. Along with changing dependencies, XML must also be changed. from
<android.support.design.widget.CoordinatorLayout
to<androidx.coordinatorlayout.widget.CoordinatorLayout
Adding dependencies
implementation 'com.android.support:appcompat-v7:28.0.0'
andimplementation 'com.android.support:design:28.0.0'
如果使用 Activity,请将其更改为 AppCompatActivity。当它是Activity时,它可能会变成错误
对于那些使用 AndroidX 依赖项的人。随着依赖关系的改变,XML 也必须改变。从
<android.support.design.widget.CoordinatorLayout
到<androidx.coordinatorlayout.widget.CoordinatorLayout
添加依赖项
implementation 'com.android.support:appcompat-v7:28.0.0'
和implementation 'com.android.support:design:28.0.0'