wake-up-neo.net

Fehler beim Aufblasen der Klasse Android.support.v7.widget.CardView

Beim Ausführen meiner Anwendung ist der folgende Fehler unerwartet aufgetreten:

Binary XML file line #8: Error inflating class Android.support.v7.widget.CardView

Unten ist die Log-Katze:

11-09 13:11:58.558: E/AndroidRuntime(12542): FATAL EXCEPTION: main
    11-09 13:11:58.558: E/AndroidRuntime(12542): Android.view.InflateException: Binary XML file line #8: Error inflating class Android.support.v7.widget.CardView
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:698)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:746)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.view.LayoutInflater.inflate(LayoutInflater.Java:489)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.view.LayoutInflater.inflate(LayoutInflater.Java:396)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at com.dooba.beta.ThirdFragment.onCreateView(ThirdFragment.Java:15)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.support.v4.app.Fragment.performCreateView(Fragment.Java:1786)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.Java:947)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.Java:1126)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.support.v4.app.BackStackRecord.run(BackStackRecord.Java:739)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.Java:1489)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.Java:454)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.os.Handler.handleCallback(Handler.Java:615)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.os.Handler.dispatchMessage(Handler.Java:92)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.os.Looper.loop(Looper.Java:137)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.app.ActivityThread.main(ActivityThread.Java:4745)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Java.lang.reflect.Method.invokeNative(Native Method)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Java.lang.reflect.Method.invoke(Method.Java:511)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:786)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:553)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at dalvik.system.NativeStart.main(Native Method)
    11-09 13:11:58.558: E/AndroidRuntime(12542): Caused by: Java.lang.ClassNotFoundException: Android.support.v7.widget.CardView
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.Java:61)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Java.lang.ClassLoader.loadClass(ClassLoader.Java:501)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Java.lang.ClassLoader.loadClass(ClassLoader.Java:461)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.view.LayoutInflater.createView(LayoutInflater.Java:552)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:687)
    11-09 13:11:58.558: E/AndroidRuntime(12542):    ... 19 more

Unten ist der Java-Code:

public class ThirdFragment extends Fragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        View rootView = inflater.inflate(R.layout.activity_city, container, false);

        return rootView;
    }


}

Unten ist der Layoutcode:

<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:tools="http://schemas.Android.com/tools"
    xmlns:card_view="http://schemas.Android.com/apk/res-auto"
        Android:layout_width="match_parent"
    Android:layout_height="match_parent"
   >
    <!-- A CardView that contains a TextView -->
    <Android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.Android.com/apk/res-auto"
        Android:id="@+id/card_view"
        Android:layout_gravity="center"
        Android:layout_width="200dp"
        Android:layout_height="200dp"
       >

        <TextView
            Android:id="@+id/info_text"
            Android:layout_width="match_parent"
            Android:layout_height="match_parent" 

            />
    </Android.support.v7.widget.CardView>
</LinearLayout>

Danke im Voraus

17
John

Ich habe dieses Problem gelöst, indem ich im App/build.gradle aktualisierte Kartenansicht und Appcompat hinzugefügt habe

dependencies {
    ...
    compile 'com.Android.support:appcompat-v7:23.4.0'    
    compile 'com.Android.support:cardview-v7:23.4.0'
    compile 'com.Android.support:recyclerview-v7:23.4.0'
    }

Dann das Projekt neu aufbauen

32
macbee

das Problem kann auch durch die Verwendung von androidX verursacht werden. Versuchen Sie, auf <androidx.cardview.widget.CardView zu wechseln, und der Absturz sollte in Ordnung sein. Ein Tipp, überprüfen Sie, ob Sie das Layout in der Vorschau sehen.

im gradle sollte es so aussehen: implementation 'androidx.cardview:cardview:1.0.0'

7
Csabi

Sie müssen eine Abhängigkeit von der v7 cardview-Bibliothek angeben

Bearbeiten Sie build.gradle und geben Sie "com.Android.support:cardview-v7:21.0.+" im Abschnitt "Abhängigkeiten" an.

4
aleb

Antworten oben haben nicht geholfen. Funktioniert gut nach dem Hinzufügen 

<Android.support.v7.widget.CardView
    ...
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    app:cardBackgroundColor="@Android:color/transparent">

Kann nicht erklären.

1
Mikhail

Um dieses Problem zu beheben, müssen Sie zuerst cardview aus dem Ordner hinzufügen 

  1. Schließen Sie das Hauptprojekt.
  2. Entfernen Sie den Android-Support-v7-appcompat.
  3. Starten Sie die Eclipse neu.
  4. Fügen Sie den Android-Support-v7-appcompat hinzu.
  5. Bauen Sie das Projekt auf.
  6. Öffnen Sie dann das Hauptprojekt und erstellen Sie alle drei Projekte.
  7. Der Fehler bleibt bestehen. Starten Sie Eclipse neu. Das ist es.

Das ist für mich in Ordnung.

1
Hemant Shori

Wenn dieser Fehler in AndroidX aufgetreten ist, müssen Sie die folgenden Abhängigkeiten verwenden, um diesen Fehler zu beheben:

implementation 'androidx.cardview:cardview:1.0.0'
0
Jerry Chong

problem ist mit Ihren Abhängigkeiten 

lesen Sie jeden Schritt sorgfältig durch

https://developer.Android.com/tools/support-library/setup.html#libs-with-res

Während Sie alle Ihre Abhängigkeiten überprüfen, überprüfen Sie einfach die zugehörige Java-Klassendatei, die es ist erweitert AppCompatACtivity oder nicht .

0
GauRav MisHra