Mon application a planté parce que
Erreur de gonflage de la classe Android.support.design.widget.FloatingActionButton
Ceci est mon code dans le XML
<Android.support.design.widget.FloatingActionButton
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_gravity="bottom|right"
Android:layout_margin="16dp"
Android:src="@drawable/icon_right"
app:backgroundTint="@color/green"
Android:onClick="previewphoto"
app:layout_anchorGravity="bottom|right|end" />
et voici mon grade
compile 'com.Android.support:appcompat-v7:23.4.0' // appcompat library
compile 'com.Android.support:design:23.4.0'
mon logcat
EXCEPTION FATALE: Processus principal: com.cyanlabsid.cetakphoto, PID: 15298 Java.lang.RuntimeException: impossible de démarrer l'activité ComponentInfo {com.cyanlabsid.cetakphoto/com.cyanlabsid.cetakphoto.PhotoPicker}: Android.view.InflateException: ligne de fichier XML binaire n ° 76: fichier XML binaire ligne de fichier n ° 76: erreur lors de l’infllation de la classe Android.support.design.widget.FloatingActionButton à Android.app.ActivityThread.performLaunchActivity (ActivityThread.Java:2423) à Android.app.ActivityThread.handleLaunchActivity (ActivityThread.Java:2483) à Android.app.ActivityThread.access 900 $ (ActivityThread.Java:153) à Android.app.ActivityThread $ H.handleMessage (ActivityThread.Java:1349) sur Android.os.Handler.dispatchMessage (Handler.Java:102) sur Android.os.Looper.loop (Looper.Java:148) à l'adresse Android.app.ActivityThread.main (ActivityThread.Java:5441) à Java.lang.reflect.Method.invoke (Méthode native) à com.Android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.Java:738) à com.Android.internal.os.ZygoteInit.main (ZygoteInit.Java:628) Caused par: Android.view.InflateException: ligne de fichier XML binaire # 76: binaire Ligne de fichier XML n ° 76: erreur de gonflage de la classe Android.support.design.widget.FloatingActionButton à Android.view.LayoutInflater.inflate (LayoutInflater.Java:543) à Android.view.LayoutInflater.inflate (LayoutInflater.Java:427) à Android.view.LayoutInflater.inflate (LayoutInflater.Java:374) à Android.support.v7.app.AppCompatDelegateImplV9.setContentView (AppCompatDelegateImplV9.Java:284) à Android.support.v7.app.AppCompatActivity.setContentView (AppCompatActivity.Java:140) sur com.cyanlabsid.cetakphoto.PhotoPicker.onCreate (PhotoPicker.Java:74) sur Android.app.Activity.performCreate (Activity.Java:6303) sur Android.app.Instrumentation.callActivityOnCreate (Instrumentation.Java:1108) à Android.app.ActivityThread.performLaunchActivity (ActivityThread.Java:2376) à Android.app.ActivityThread.handleLaunchActivity (ActivityThread.Java:2483) à Android.app.ActivityThread.access 900 $ (ActivityThread.Java:153) à Android.app.ActivityThread $ H.handleMessage (ActivityThread.Java:1349) sur Android.os.Handler.dispatchMessage (Handler.Java:102) sur Android.os.Looper.loop (Looper.Java:148) à l'adresse Android.app.ActivityThread.main (ActivityThread.Java:5441) à Java.lang.reflect.Method.invoke (Méthode native) à com.Android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.Java:738) sur com.Android.internal.os.ZygoteInit.main (ZygoteInit.Java:628)
Quelqu'un peut-il dire ma faute?
J'ai essayé votre code, le problème vient de la bibliothèque 23.4.0.
Passez à la version 24. +, il n'y a pas d'erreur dans cette bibliothèque.
Par exemple :
implementation 'com.Android.support:appcompat-v7:24.2.1' // appcompat library
implementation 'com.Android.support:design:24.2.1'
Vous devez également modifier la version de compilation en 24.
compileSdkVersion 24
Utilisation
app:backgroundTint
au lieu de
Android:backgroundTint
J'espère que ça va marcher.
Parce que Android:backgroundTint
ne fonctionne pas sous Android API 21, vous devez donc utiliser app:backgroundTint
à la place.
Les versions d’application inférieures au niveau API 21 ne prennent pas en charge la
app:backgroundTint="@color/green"
ou vous pouvez utiliser cette bibliothèque pour réaliser plus de widgets de conception de matériel.
codage heureux ...
J'ai eu le même problème
J'ai rencontré le même problème avec la version Pre-Lolipop et pour le résoudre, je viens de changer " Android: src " en " app: srcCompat " & cela a fonctionné pour moi.
Pour assurer la compatibilité avec les versions antérieures et si vous utilisez des graphiques vectoriels (en tant qu'actifs pouvant être appelés), vous devez utiliser:
app:srcCompat="@drawable/you_graphics"
au lieu de:
Android:src="@drawable/your_graphics"
Vous devez ajouter
Android: theme = "@ style/Theme.AppCompat"
dans le fichier XML_Layout dans lequel vous utilisez FloatingActionButton ...
utilisez ce code cela fonctionnera mieux;
<Android.support.design.widget.FloatingActionButton
Android:id="@+id/fab"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentRight="true"
Android:layout_alignParentBottom="true"
Android:layout_margin="16dp"
app:backgroundTint="#f9fcfc"
Android:src="@drawable/chat_float"
tools:targetApi="Lollipop" />