web-dev-qa-db-ja.com

ClassNotFoundException:クラス「Android.support.design.R $ styleable」が見つかりませんでした

こんにちは私は NavigationView を使用していますが、エラーが発生します。以下は私のxmlです。すでにAndroidサポートとv7ライブラリが含まれています

project.properties私は使用していないのでAndroid studio

target=Android-22
Android.library.reference.1=../Android-support-v7-appcompat
Android.library.reference.2=../design


<Android.support.v4.widget.DrawerLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:tools="http://schemas.Android.com/tools"
    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"
    tools:context="com.toxic.apps.Kodi" >

<LinearLayout
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:orientation="vertical" >

    <Android.support.v7.widget.Toolbar
        Android:id="@+id/toolbar"
        Android:layout_width="match_parent"
        Android:layout_height="?attr/actionBarSize"
        Android:background="@color/primary"
        Android:minHeight="?attr/actionBarSize" />

    <FrameLayout
        Android:id="@+id/container"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent" />
</LinearLayout>

<Android.support.design.widget.NavigationView
    Android:id="@+id/navigation"
    app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:layout_gravity="start"
    app:headerLayout="@layout/drawer_header"
    app:itemTextColor="@color/primary"
    app:menu="@menu/drawer" />

</Android.support.v4.widget.DrawerLayout>

以下は私のスタックトレースです

06-21 06:24:12.799: E/AndroidRuntime(4913): Java.lang.RuntimeException: Unable to start activity ComponentInfo{com.toxic.apps.Kodi/com.toxic.apps.Kodi.Activities.MainActivity}: Android.view.InflateException: Binary XML file line #30: Error inflating class Android.support.design.widget.NavigationView
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2298)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2360)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.app.ActivityThread.access$800(ActivityThread.Java:144)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1278)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.os.Handler.dispatchMessage(Handler.Java:102)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.os.Looper.loop(Looper.Java:135)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.app.ActivityThread.main(ActivityThread.Java:5221)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Java.lang.reflect.Method.invoke(Native Method)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Java.lang.reflect.Method.invoke(Method.Java:372)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:899)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:694)
06-21 06:24:12.799: E/AndroidRuntime(4913): Caused by: Android.view.InflateException: Binary XML file line #30: Error inflating class Android.support.design.widget.NavigationView
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.view.LayoutInflater.createView(LayoutInflater.Java:633)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:743)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:806)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.view.LayoutInflater.inflate(LayoutInflater.Java:504)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.view.LayoutInflater.inflate(LayoutInflater.Java:414)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.view.LayoutInflater.inflate(LayoutInflater.Java:365)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.Java:249)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.Java:106)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at com.toxic.apps.Kodi.Activities.AbstractBaseActivity.setContentView(AbstractBaseActivity.Java:33)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at com.toxic.apps.Kodi.Activities.MainActivity.onCreate(MainActivity.Java:35)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.app.Activity.performCreate(Activity.Java:5933)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1105)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2251)
06-21 06:24:12.799: E/AndroidRuntime(4913):     ... 10 more
06-21 06:24:12.799: E/AndroidRuntime(4913): Caused by: Java.lang.reflect.InvocationTargetException
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Java.lang.reflect.Constructor.newInstance(Native Method)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Java.lang.reflect.Constructor.newInstance(Constructor.Java:288)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.view.LayoutInflater.createView(LayoutInflater.Java:607)
06-21 06:24:12.799: E/AndroidRuntime(4913):     ... 22 more
06-21 06:24:12.799: E/AndroidRuntime(4913): Caused by: Java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/design/R$styleable;
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.support.design.internal.ScrimInsetsFrameLayout.<init>(ScrimInsetsFrameLayout.Java:54)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.support.design.widget.NavigationView.<init>(NavigationView.Java:92)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Android.support.design.widget.NavigationView.<init>(NavigationView.Java:88)
06-21 06:24:12.799: E/AndroidRuntime(4913):     ... 25 more
06-21 06:24:12.799: E/AndroidRuntime(4913): Caused by: Java.lang.ClassNotFoundException: Didn't find class "Android.support.design.R$styleable" on path: DexPathList[[Zip file "/data/app/com.toxic.apps.Kodi-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
06-21 06:24:12.799: E/AndroidRuntime(4913):     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.Java:56)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Java.lang.ClassLoader.loadClass(ClassLoader.Java:511)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at Java.lang.ClassLoader.loadClass(ClassLoader.Java:469)
06-21 06:24:12.799: E/AndroidRuntime(4913):     ... 28 more
06-21 06:24:12.799: E/AndroidRuntime(4913):     Suppressed: Java.lang.ClassNotFoundException: Android.support.design.R$styleable
06-21 06:24:12.799: E/AndroidRuntime(4913):         at Java.lang.Class.classForName(Native Method)
06-21 06:24:12.799: E/AndroidRuntime(4913):         at Java.lang.BootClassLoader.findClass(ClassLoader.Java:781)
06-21 06:24:12.799: E/AndroidRuntime(4913):         at Java.lang.BootClassLoader.loadClass(ClassLoader.Java:841)
06-21 06:24:12.799: E/AndroidRuntime(4913):         at Java.lang.ClassLoader.loadClass(ClassLoader.Java:504)
06-21 06:24:12.799: E/AndroidRuntime(4913):         ... 29 more
06-21 06:24:12.799: E/AndroidRuntime(4913):     Caused by: Java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
9
ingsaurabh

さて、ついに私はDenisLohの提案を使用して問題を解決しました。この問題を解決するための鍵は、このクラッシュが発生したときに、含まれているすべてのライブラリのRファイルを確認することですdesign library Rは生成されないため、プロジェクトのgenフォルダーに表示されません。

しかし、Eclipseはなぜそれが生成されないのかという問題をあなたに示しません(神はEclipseがどのように機能するかを知っています)

だからデザインフォルダのRファイルを生成するために

デザインライブラリのproject.propertiesで、ターゲットを21以上に設定します。

クリーンなv7、デザイン、プロジェクトの実行と楽しみ

8
ingsaurabh

AndroidSupportDesignを\ sdk\extras\Android\support\designからインポートし、「isLibrary」にチェックマークを付けてから、appcombat_v7(lib)をandroidSupportDesignにインポートします。最後に、プロジェクトにインポートして、すべてをクリーンビルドします。私はそれが役立つことを願っています

すべてのプロジェクトはAPI> 21でビルドされます

君は!

1
Thientvse

この問題を解決する方法は、最初に「./gradlew clean」を実行してから、「。/gradlewinstallDebug」を使用してコードをコンパイルすることです。

問題は、古いRファイルがまだ同じままであり、コンパイラが古いRファイル内でCoordinatorLayoutに関連するリソースを見つけることができないためだと思います。

これがお役に立てますように。

0
Anthonyeef