web-dev-qa-db-ja.com

クラスAndroid.support.design.widget.NavigationViewの膨張エラー

サポートデザインライブラリの新しいコンポーネント NavigationView のチュートリアルに従ったが、このエラーメッセージを理解できない。

Error inflating class Android.support.design.widget.NavigationView

ここですべての回避策を試してみました

Androidデザインサポートライブラリの要素を使用するとエラーになります

しかし、エラーメッセージはまだ存在します。

xml

<Android.support.v4.widget.DrawerLayout
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    Android:id="@+id/drawer_layout"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:fitsSystemWindows="true" >
    <RelativeLayout
        Android:layout_width="match_parent"
        Android:layout_height="match_parent" >

    <include layout="@layout/toolbar" Android:id="@+id/mainToolBar" />

    <fragment Android:name="com.ais.cherry.fragment.LoginFragment"
        Android:id="@+id/loginFragment"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:layout_below="@id/mainToolBar" />
    <fragment     Android:name="com.ais.cherry.fragment.WaterFallFragment"
        Android:id="@+id/mainFragment"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:layout_below="@id/mainToolBar" />
    <fragment Android:name="com.ais.cherry.fragment.SearchFragment"
        Android:id="@+id/searchFragment"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:layout_below="@id/mainToolBar" />
    <fragment Android:name="com.ais.cherry.fragment.ChatMainFragment"
        Android:id="@+id/chatMainFragment"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:layout_below="@id/mainToolBar" />
    <fragment Android:name="com.ais.cherry.fragment.ProfileFragment"
        Android:id="@+id/profileFragment"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:layout_below="@id/mainToolBar" />


    <Android.support.design.widget.NavigationView
        Android:id="@+id/nav_view"
        Android:layout_width="240dp"
        Android:layout_height="match_parent"
        Android:layout_gravity="start"
        Android:background="@Android:color/white"
        app:itemTextColor="#212121"
        app:headerLayout="@layout/drawer_header"
        app:menu="@menu/drawer" />
</Android.support.v4.widget.DrawerLayout>

build.gradle

buildscript {
    repositories {
        mavenCentral()
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
        classpath 'com.Android.tools.build:gradle:1.2.3'
    }
}

compileSdkVersion 22
buildToolsVersion "22.0.1"

defaultConfig {
    applicationId "com.ais.cherry"
    minSdkVersion 16
    targetSdkVersion 22      
    multiDexEnabled true
    renderscriptTargetApi 22
    renderscriptSupportModeEnabled true

}
dependencies {
    compile 'com.Android.support:appcompat-v7:22.2.0'
    compile 'com.Android.support:support-v4:22.2.0'
    compile 'com.Android.support:design:22.2.0'
    compile 'com.Android.support:recyclerview-v7:22.2.0'
}

プロジェクトbuild.gradle

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:1.2.3'
    }
}

styles.xml

<?xml version="1.0" encoding="utf-8"?>
<!-- Base application theme. -->
<style name="AppTheme" parent="AppTheme.Base">

</style>

<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="Android:windowActionBarOverlay">true</item>
    <item name="Android:windowActionModeOverlay">true</item>
    <item name="Android:actionModeStyle">@style/AppTheme.ActionModeStyle</item>
    <item name="Android:windowActionBar">false</item>
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="Android:windowNoTitle">true</item>
    <!-- Support library compatibility -->
    <item name="windowActionBarOverlay">true</item>

    <!-- ActionBar color -->
    <item name="colorPrimary">#E91E63</item>
    <!-- Status bar color -->
    <item name="colorPrimaryDark">#C2185B</item>
    <!-- Window color -->
    <item name="Android:windowBackground">@color/white</item>
    <!-- ActionBar title text -->
    <item name="Android:titleTextStyle">@style/AppTheme.MyActionBarTitleText</item>

    <item name="colorAccent">#9E9E9E</item>

    <item name="drawerArrowStyle">@style/AppTheme.MyDrawerArrowStyle</item>

    <!-- color for actionMenu-->
    <item name="actionMenuTextColor">#FFFFFF</item>
    <item name="Android:actionMenuTextColor">#FFFFFF</item>
    <!-- Android:textColorSecondary is the color of the menu
   overflow icon (three vertical dots) -->
    <item name="Android:textColorPrimary">#212121</item>
    <item name="Android:textColorSecondary">#FFFFFF</item>
    <!--Navigation bar color-->
    <item name="Android:navigationBarColor">#E91E63</item>
    <!--Status bar color-->
    <item name="Android:statusBarColor">#C2185B</item>
</style>

任意の助けは大歓迎です!

編集 - @ menu/drawer&@ menu/drawer_header&stacktraceを追加

drawer.xml

<menu xmlns:Android="http://schemas.Android.com/apk/res/Android">
    <group Android:checkableBehavior="single">
        <item
            Android:id="@+id/nav_first_fragment"
            Android:icon="@drawable/home_view"
            Android:checked="true"
            Android:title="@string/main"/>
        <item
            Android:id="@+id/nav_second_fragment"
            Android:icon="@drawable/comment_view"
            Android:title="@string/chat"/>
        <item
            Android:id="@+id/nav_third_fragment"
            Android:icon="@drawable/user_view"
            Android:title="@string/profile"/>
        <item Android:title="@string/search">
            <menu>
                <item
                    Android:title="@string/clothes"/>
                <item
                    Android:title="@string/pants"/>
            </menu>
        </item>
    </group>
</menu>

drawer_header.xml

<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:orientation="vertical" Android:layout_width="match_parent"
    Android:layout_height="192dp"
    Android:background="?attr/colorPrimaryDark"
    Android:padding="16dp"
    Android:theme="@style/ThemeOverlay.AppCompat.Dark"
    Android:gravity="bottom">
    <TextView
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:text="@string/title"
        Android:textColor="@Android:color/white"
            Android:textAppearance="@style/TextAppearance.AppCompat.Body1"/>
</LinearLayout>

StackTrace(一部のみ)

それは以下のように3つの例外を投げました:問題はすべて、layout.xmlの中の "setContentView(layout)"の行によって引き起こされることを指摘しています。

Java.lang.RuntimeException: Unable to start activity  ComponentInfo{com.ais.cherry/com.ais.cherry.activity.FirstActivity}:    Android.view.InflateException: Binary XML file line #32: Error inflating    class Android.support.design.widget.NavigationView

Caused by: Android.view.InflateException: Binary XML file line #32: Error inflating class Android.support.design.widget.NavigationView

Caused by: Java.lang.reflect.InvocationTargetException

Caused by: Android.content.res.Resources$NotFoundException: Resource ID #0x0
78
pptang

実際には、依存関係のアップグレードまたはダウングレードのprimarycolortextの問題ではありません。この問題は、appcompatライブラリとデザインサポートライブラリのバージョンが一致しない場合に発生する可能性があります。

一致条件の例

compile 'com.Android.support:appcompat-v7:23.1.1' // appcompat library
compile 'com.Android.support:design:23.1.1'       //design support library
80
Balman Rawat

私は同じようなエラーがありました。私が使うとき

<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">

    <item name="colorPrimary">#673AB7</item>
    <item name="colorPrimaryDark">#512DA8</item>
    <item name="colorAccent">#00BCD4</item>
    <item name="Android:textColorPrimary">#212121</item>
    <item name="Android:textColorSecondary">#727272</item>

</style>

私はアンドロイド:textColorPrimaryとアンドロイド:textColorSecondaryテーマ項目を削除するとき私のために働く。

<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">

    <item name="colorPrimary">#673AB7</item>
    <item name="colorPrimaryDark">#512DA8</item>
    <item name="colorAccent">#00BCD4</item>

</style>

まず最初に、とてもシンプルなAppテーマで作業してみましょう。

編集:

これ チュートリアル が役に立ちます。私の理解するところでは、 "Android:textColorPrimary"を使用するには最低限apiレベル21が必要です。 "Android:"なしで同じタグを使用するとデザインサポートライブラリが使用されます。どのサポートライブラリウィジェットも「Android:textColorPrimary」の代わりに「textColorPrimary」項目を見つけようとしますが、それが見つからない場合は上記のエラーをスローします。

45
Parag Naik

私も同じエラーがありました。私の場合、リソースのいくつかはdrawable-v21だけでした。それらのリソースをdrawableフォルダにもコピーしてください。これで問題は解決しました。

Caused by: Android.content.res.Resources$NotFoundException: Resource ID #0x0 

これが主な問題です。

36
Sajal

同じエラーがありました。ナビゲーションビューにapp:itemTextColor="@color/a_color"を追加して解決しました。

<Android.support.design.widget.NavigationView
    Android:id="@+id/navigation_view"
    Android:layout_width="wrap_content"
    Android:layout_height="match_parent"
    Android:layout_gravity="left"
    app:headerLayout="@layout/layout_drawer_header"
    app:menu="@menu/drawer_menu"
    app:itemTextColor="@color/primary"/>

このメソッドであなたのテーマにまだAndroid:textColorPrimaryAndroid:textColorSecondaryを使うことができます。

15
Pidikan

それで私はこのエラーを修正しようとしていました。そして、誰も私のために働きませんでした。解決策を見つけることができませんでした。 シナリオ:

私はちょうどAndroid Studio 2.1.2内でNavigation Drawer Projectを作成しようとしていました。そしてnav_header_main.xmlのデフォルトのAndroidアイコンを変更しようとすると、いくつかの奇妙なエラーが発生しました。私は自分のPNGのロゴを...\app\src\main\res\drawable-21にドロップしていることに気付きました。 PNGロゴを...\app\src\main\res\drawable bamに入れようとしたときすべての奇妙なエラーは消えます。

以下は、PNGをdrawable-21フォルダーに入れたときのスタックトレースの一部です。

08-17 17:29:56.237 6644-6678/myAppName  E/dalvikvm: Could not find class 'Android.util.ArrayMap', referenced from method com.Android.tools.fd.runtime.Restarter.getActivities
08-17 17:30:01.674 6644-6644/myAppName E/AndroidRuntime: FATAL EXCEPTION: main
                                                                         Java.lang.RuntimeException: Unable to start activity ComponentInfo{myAppName.MainActivity}: Android.view.InflateException: Binary XML file line #16: Error inflating class <unknown>
                                                                             at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2372)
                                                                             at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2424)
                                                                             at Android.app.ActivityThread.handleRelaunchActivity(ActivityThread.Java:3956)
                                                                             at Android.app.ActivityThread.access$700(ActivityThread.Java:169)
                                                                             at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1394)
                                                                             at Android.os.Handler.dispatchMessage(Handler.Java:107)
                                                                             at Android.os.Looper.loop(Looper.Java:194)
                                                                             at Android.app.ActivityThread.main(ActivityThread.Java:5433)
                                                                             at Java.lang.reflect.Method.invokeNative(Native Method)
                                                                             at Java.lang.reflect.Method.invoke(Method.Java:525)
                                                                             at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:924)
                                                                             at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:691)
                                                                             at dalvik.system.NativeStart.main(Native Method)
                                                                          Caused by: Android.view.InflateException: Binary XML file line #16: Error inflating class <unknown>
                                                                             at Android.view.LayoutInflater.createView(LayoutInflater.Java:613)
                                                                             at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:687)
                                                                             at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:746)
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:489)
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:396)
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:352)
                                                                             at Android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.Java:280)
                                                                             at Android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.Java:140)
                                                                             at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.Java:22)
                                                                             at Android.app.Activity.performCreate(Activity.Java:5179)
                                                                             at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1146)
                                                                             at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2336)
                                                                             at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2424) 
                                                                             at Android.app.ActivityThread.handleRelaunchActivity(ActivityThread.Java:3956) 
                                                                             at Android.app.ActivityThread.access$700(ActivityThread.Java:169) 
                                                                             at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1394) 
                                                                             at Android.os.Handler.dispatchMessage(Handler.Java:107) 
                                                                             at Android.os.Looper.loop(Looper.Java:194) 
                                                                             at Android.app.ActivityThread.main(ActivityThread.Java:5433) 
                                                                             at Java.lang.reflect.Method.invokeNative(Native Method) 
                                                                             at Java.lang.reflect.Method.invoke(Method.Java:525) 
                                                                             at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:924) 
                                                                             at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:691) 
                                                                             at dalvik.system.NativeStart.main(Native Method) 
                                                                          Caused by: Java.lang.reflect.InvocationTargetException
                                                                             at Java.lang.reflect.Constructor.constructNative(Native Method)
                                                                             at Java.lang.reflect.Constructor.newInstance(Constructor.Java:417)
                                                                             at Android.view.LayoutInflater.createView(LayoutInflater.Java:587)
                                                                             at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:687) 
                                                                             at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:746) 
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:489) 
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:396) 
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:352) 
                                                                             at Android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.Java:280) 
                                                                             at Android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.Java:140) 
                                                                             at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.Java:22) 
                                                                             at Android.app.Activity.performCreate(Activity.Java:5179) 
                                                                             at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1146) 
                                                                             at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2336) 
                                                                             at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2424) 
                                                                             at Android.app.ActivityThread.handleRelaunchActivity(ActivityThread.Java:3956) 
                                                                             at Android.app.ActivityThread.access$700(ActivityThread.Java:169) 
                                                                             at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1394) 
                                                                             at Android.os.Handler.dispatchMessage(Handler.Java:107) 
                                                                             at Android.os.Looper.loop(Looper.Java:194) 
                                                                             at Android.app.ActivityThread.main(ActivityThread.Java:5433) 
                                                                             at Java.lang.reflect.Method.invokeNative(Native Method) 
                                                                             at Java.lang.reflect.Method.invoke(Method.Java:525) 
                                                                             at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:924) 
                                                                             at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:691) 
                                                                             at dalvik.system.NativeStart.main(Native Method) 
                                                                          Caused by: Android.view.InflateException: Binary XML file line #14: Error inflating class ImageView
                                                                             at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:704)
                                                                             at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:746)
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:489)
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:396)
at Android.support.design.internal.NavigationMenuPresenter.inflateHeaderView(NavigationMenuPresenter.Java:189)
at Android.support.design.widget.NavigationView.inflateHeaderView(NavigationView.Java:262)
at Android.support.design.widget.NavigationView.<init>(NavigationView.Java:173)
at Android.support.design.widget.NavigationView.<init>(NavigationView.Java:95)
at Java.lang.reflect.Constructor.constructNative(Native Method) 
at Java.lang.reflect.Constructor.newInstance(Constructor.Java:417) 
at Android.view.LayoutInflater.createView(LayoutInflater.Java:587) 
                                                                             at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:687) 
                                                                             at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:746) 
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:489) 
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:396) 
                                                                             at Android.view.LayoutInflater.inflate(LayoutInflater.Java:352) 
                                                                             at Android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.Java:280) 
                                                                             at Android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.Java:140) 
                                                                             at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.Java:22) 
                                                                             at Android.app.Activity.performCreate(Activity.Java:5179) 
                                                                             at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1146) 
                                                                             at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2336) 
                                                                             at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2424) 
                                                                             at Android.app.ActivityThread.handleRelaunchActivity(ActivityThread.Java:3956) 
                                                                             at Android.app.ActivityThread.access$700(ActivityThread.Java:169) 
                                                                             at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1394) 
                                                                             at Android.os.Handler.dispatchMessage(Handler.Java:107) 
                                                                             at Android.os.Looper.loop(Looper.Java:194) 
                                                                             at Android.app.ActivityThread.main(ActivityThread.Java:5433) 
                                                                             at Java.lang.reflect.Method.invokeNative(Native Method) 
                                                                             at Java.lang.reflect.Method.invoke(Method.Java:525) 
                                                                             at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:924) 
                                                                             at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:691) 
                                                                             at dalvik.system.NativeStart.main(Native Method) 
                                                                          Caused by: Java.lang.NullPointerException
                                                                             at Android.content.res.ResourcesEx.getThemeDrawable(ResourcesEx.Java:459)
                                                                             at Android.content.res.ResourcesEx.loadDrawable(ResourcesEx.Java:435)
                                                                             at Android.content.res.TypedArray.getDrawable(TypedArray.Java:609)
                                                                             at Android.widget.ImageView.<init>(ImageView.Java:120)
                                                                             at Android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.Java:57)
                                                                             at Android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.Java:53)
                                                                             at Android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.Java:106)
                                                                             at Android.support.v7.app.AppCompatDelegateImplV7.createView(AppCompatDelegateImplV7.Java:980)
                                                                             at Android.support.v7.app.AppCompatDelegateImplV7.onCreateView(AppCompatDelegateImplV7.Java:1039)
                                                                             at Android.support.v4.view.LayoutInflaterCompatHC$FactoryWrapperHC.onCreateView(LayoutInflaterCompatHC.Java:44)
                                                                            at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:

ご覧のとおり、上記のスタックトレースは次のとおりです。

Android.support.design.wavig.NavigationView.inflateHeaderView(NavigationView.Java:262)at Android.support.design.widget.NavigationView。(NavigationView.Java:173)at Android.support.design.widget.NavigationView。 Java:95)

14
fWd82

私はそれをgradleで格下げから解決しました

compile 'com.Android.support:design:23.1.0'

compile 'com.Android.support:design:23.0.1'

Android Studioのコンポーネントをアップデートするといつも問題が起きるようです。それにうんざりしています。

11
Ton

上記の修正はどれも私にとってはうまくいきませんでした。

私にとってうまくいったのは変わった

<item name="Android:textColorSecondary">#FFFFFF</item>

<item name="Android:textColorSecondary">@color/colorWhite</item>

明らかにあなたのcolors.xmlにcolorWhiteを追加する必要があります。

7
Rafal Roszak

以下の手順に従うと、確実にこのエラーが取り除かれます。

  • エラーの原因となっているウィジェットを見つけます。
  • そのウィジェットが宣言されているレイアウトファイルに移動します。
  • そのファイルで使用されているすべてのリソース(ドロアブルなど)を調べます。
  • それからリソースがdrawableのすべてのバージョン(drawable-v21、drawableなど)にあることを確認してください。

乾杯!!

5

Parag Naikが正しく述べているように(そしてLạngHoàngが拡張して)、textColorPrimaryをカラー状態リスト以外のものに設定すると問題が発生します。そのため、textColorPrimaryを状態リストとして設定できます。 colorPrimaryが1色のみの状態リストであることについてAndroidのバグトラッカーに問題があります。 https://code.google.com/p/Android/issues/detail?id=17235

それで、styles.xmlのあなたのテーマのために:

<style name="Base.Theme.Hopster" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primary_dark</item>
    <item name="colorAccent">@color/accent</item>

    <item name="Android:textColorPrimary">@color/primary_color_statelist</item>
</style>

そして実際のprimary_color_statelist.xmlファイル:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:Android="http://schemas.Android.com/apk/res/Android">
    <!-- This is used when the Navigation Item is checked -->
    <item Android:color="@color/primary_text_selected" Android:state_checked="true" />
    <!-- This is the default text color -->
    <item Android:color="@color/primary_text" />
</selector>
5
Chris

androidxに既に移行している場合は、レイアウトxmlをから変更する必要があります。

<Android.support.design.widget.NavigationView ... />

<com.google.Android.material.navigation.NavigationView ... />
5
Mark Pazon

私の場合、KitKat API 19バージョンのデバイスでアプリを実行したときに同じエラーが発生しました。私はその問題を考え出した。 drawable-v21ディレクトリ(API 21 Lollipopからのバージョンで使用されています)にいくつかの描画可能なリソースがありました。私はちょうどAPI 21以下のバージョンで動作するように "Drawable"フォルダに同じリソースを入れました。それは動作します。対応するディレクトリに置くことができます

4
Gibs

私にとって、私は何度もこのエラーに遭遇しました、

クラスAndroid.support.design.widget.NavigationViewの膨張エラー#28および#29

私のために働く解決策はあなたがあなたのサポートデザインライブラリとあなたのサポートappcompatライブラリを一致させなければならないということです。

compile 'com.Android.support:appcompat-v7:23.1.1'

compile 'com.Android.support:design:23.1.1'

私にとって彼らは一致しなければなりません。 :) わたしにはできる!

4
RoCk Vangeance

まだこの問題にたどり着いている人のためだけに。私は同じ問題にたどり着きました、しかし、ここでのすべての解決策は私のために働かない。

Logcatの手がかりとしてNavigationViewクラスを見てみると、このコード行から問題が発生することがわかりました。

itemTextColor = this.createDefaultColorStateList(16842806);

Aenur56が述べたように、それはitemTextColorに関連しているようです。だから私はAenur56の解決策を試してみましたが、それはうまくいきません。

上記のコード行を見てください、私はColorStateListがあることに気付きます。だから私は1つを作成し、それからitemTextColorを設定します。

<selector xmlns:Android="http://schemas.Android.com/apk/res/Android">
    <item Android:color="#00FF00" Android:state_checked="true" />
    <item Android:color="#000000" />
</selector>

お役に立てば幸いです。

3
Lạng Hoàng

上記の解決策のどれも私を助けませんでした。私はこれを他のウェブページで見つけました、そしてそれは私のために働きました - 「デザインライブラリのproject.propertiesで利用可能な21以上に目標を設定し、そしてきれいにデザインlib、appcomaptとあなたのプロジェクトを楽しんでください」

それが役立つことを願っています!

3
Michał Stawski

このエラーは、以下の理由で発生する可能性があります。

  1. この問題は、appcompatライブラリとデザインサポートライブラリのバージョンが一致しない場合に発生する可能性があります。一致条件の例

     compile 'com.Android.support:appcompat-v7:24.2.0' // appcompat library
    
     compile 'com.Android.support:design:24.2.0' //design support library
    
  2. スタイルのテーマファイルにこれら2つしかない場合は、

     <item name="colorPrimary">#4A0958</item>
     <item name="colorPrimaryDark">#4A0958</item>
    

次にColorAccentも追加します。それはこのように見えるはずです。

 <style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">

  <item name="colorPrimary">#4A0958</item>
  <item name="colorPrimaryDark">#4A0958</item>
  <item name="colorAccent">#4A0958</item>

 </style>
1
Vishal Puri

それは奇妙だがきれいなプロジェクトと再構築プロジェクトは私のために働いた。

1
shaby

私も同じ問題を抱えていました、私が問題が私のdrawable_menu.xmlファイルにあることを私が見つけた約3時間を調べた後、それは間違って書かれていました:D

1
Antarix

メニュー用のドロアブルが正しいフォルダにあることを確認してください。ドロアブルv21のどこに置くのか、それでこれはリソースへのnullポインタを引き起こしました。

アイコンをdrawablesフォルダに移動して購入したのを修正しました

1
Ismael ozil

サポートライブラリをアップグレードした後も同じ問題がありましたが、どれも解決しませんでした。最後に、最新バージョンのビルドツールをダウンロードし、build.gradleをbuildToolsVersion "23.0.1"にアップグレードすることで解決しました。

1
Erick

アップグレードしたほうがよいcom.Android.support:appcompat-v7:23.1.0

as @ Tonは言った ダウングレードcompile 'com.Android.support:design:23.1.0'

しかしアップグレードしないのはなぜcom.Android.support:appcompat-v7:23.1.1

最終アップグレードは私にとってはうまくいきました

compile 'com.Android.support:appcompat-v7:23.1.1'
compile 'com.Android.support:design:23.1.1'

それではなぜ古いライブラリを使うのか。私は今デザインとコンパクトアップグレードの両方を使う方が良いと思います。

1
karan

私は解決策を見つけました...あなたがapp:srcCompatをAndroid:srcに変更したなら、この解決策は私のために働きました:)

0
Khun Htet Naing

再確認することの1つは、AndroidManifest.xmlファイルでテーマを正しく適用したことです。私の場合は、Android:theme属性を省略しました。例えば:

<application ... Android:theme="@style/Your.Theme.Here" ... >
0
David Conlisk

Error inflating class Xのような問題を解決するための一般的な方法:

  1. 原因のスタックトレースを確認し、このようなResources$NotFoundExceptionがあるはずです。
Caused by: Android.content.res.Resources$NotFoundException: Resource ID #0x7f0b0066
    at Android.content.res.ResourcesImpl.getValue(ResourcesImpl.Java:190)
    at Android.content.res.Resources.loadXmlResourceParser(Resources.Java:2094)
    at Android.content.res.Resources.getLayout(Resources.Java:1111)
    at Android.view.LayoutInflater.inflate(LayoutInflater.Java:424)
  1. Resource IDは、実際には生成されたR.Javaファイルの正確な整数です。
  2. 膨張させることができなかったxmlファイルを指す0x7f0b0066を見つけてください。
  3. ほとんどの場合、ディレクトリlayoutにはこのリソースがありませんが、一部のlayout-XXXにはあります。
  4. そして解決策は、必要なすべてのディレクトリにリソースを入れることです。または少なくともlayoutに入れるだけです。
0
eleven