After Migrating to AndroidX, i got this Error inflating class <unknown>

2

After Migrating to AndroidX from Refactor tools in Android Studio, i got this error - android.view.InflateException: Binary XML file line #42: Error inflating class ..

Before i was Working Perfectly but only after migrating it was coming up with these errors in some activities..

StackTrace :

 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.pumosoft.naveenkadiyala.familychoice/com.pumosoft.naveenkadiyala.familychoice.Login}: android.view.InflateException: Binary XML file line #42: Error inflating class <unknown>
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
        at android.app.ActivityThread.access$800(ActivityThread.java:151)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:135)
        at android.app.ActivityThread.main(ActivityThread.java:5254)
        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:903)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
     Caused by: android.view.InflateException: Binary XML file line #42: Error inflating class <unknown>
        at android.view.LayoutInflater.createView(LayoutInflater.java:633)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
        at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:469)
        at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
        at com.pumosoft.naveenkadiyala.familychoice.Login.onCreate(Login.java:44)
        at android.app.Activity.performCreate(Activity.java:5990)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
        at android.app.ActivityThread.access$800(ActivityThread.java:151) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:135) 
        at android.app.ActivityThread.main(ActivityThread.java:5254) 
        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:903) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 
     Caused by: java.lang.reflect.InvocationTargetException
        at java.lang.reflect.Constructor.newInstance(Native Method)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
        at android.view.LayoutInflater.createView(LayoutInflater.java:607)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743) 
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:806) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:504) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:414) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:365) 
        at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:469) 
        at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
        at com.pumosoft.naveenkadiyala.familychoice.Login.onCreate(Login.java:44) 
        at android.app.Activity.performCreate(Activity.java:5990) 
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
        at android.app.ActivityThread.access$800(ActivityThread.java:151) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:135) 
        at android.app.ActivityThread.main(ActivityThread.java:5254) 
        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:903) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 
     Caused by: android.content.res.Resources$NotFoundException: Resource ID #0xffffffff
        at android.content.res.Resources.getValue(Resources.java:1266)
        at androidx.appcompat.content.res.AppCompatResources.isColorInt(AppCompatResources.java:163)
        at androidx.appcompat.content.res.AppCompatResources.inflateColorStateList(AppCompatResources.java:110)
        at androidx.appcompat.content.res.AppCompatResources.getColorStateList(AppCompatResources.java:76)
        at com.google.android.material.textfield.TextInputLayout.<init>(TextInputLayout.java:366)
        at com.google.android.material.textfield.TextInputLayout.<init>(TextInputLayout.java:247)
        at java.lang.reflect.Constructor.newInstance(Native Method) 
        at java.lang.reflect.Constructor.newInstance(Constructor.java:288) 
        at android.view.LayoutInflater.createView(LayoutInflater.java:607) 
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743) 
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:806) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:504) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:414) 
        at android.view.LayoutInflater.inflate(LayoutInflater.java:365) 
        at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:469) 
        at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
        at com.pumosoft.naveenkadiyala.familychoice.Login.onCreate(Login.java:44) 
        at android.app.Activity.performCreate(Activity.java:5990) 
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
        at android.app.ActivityThread.access$800(ActivityThread.java:151) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:135) 
        at android.app.ActivityThread.main(ActivityThread.java:5254) 
        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:903) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 
I/Process: Sending signal. PID: 15330 SIG: 9
Application terminated.

My XML Code:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:background="@drawable/bg__gradient"
    android:orientation="vertical"
    tools:context=".Login">

    <TextView
        android:id="@+id/log_title"
        android:layout_width="match_parent"
        android:layout_height="@dimen/_150sdp"
        android:fontFamily="@font/berkshire_swash"
        android:gravity="center"
        android:text="@string/app_name"
        android:textColor="#fff"
        android:textSize="@dimen/_47ssp" />

    <com.google.android.material.textfield.TextInputLayout
        android:id="@+id/log_email"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="@dimen/_10sdp"
        android:layout_marginRight="@dimen/_10sdp"
        android:layout_marginBottom="@dimen/_10sdp"
        android:textColorHint="#fff"
        app:errorTextAppearance="@style/error_appearance"
        app:hintTextAppearance="@style/TextAppearance.App.TextInputLayout">

        <com.google.android.material.textfield.TextInputEditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:fontFamily="@font/ubuntu_light"
            android:hint="@string/email"
            android:inputType="textEmailAddress"
            android:textColor="#fff"
            app:backgroundTint="#fff" />
    </com.google.android.material.textfield.TextInputLayout>

    <com.google.android.material.textfield.TextInputLayout
        android:id="@+id/log_password"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="@dimen/_10sdp"
        android:layout_marginRight="@dimen/_10sdp"
        android:layout_marginBottom="@dimen/_10sdp"
        android:textColorHint="#fff"
        app:errorTextAppearance="@style/error_appearance"
        app:hintTextAppearance="@style/TextAppearance.App.TextInputLayout"
        app:passwordToggleEnabled="true"
        app:passwordToggleTint="#FFF">

        <com.google.android.material.textfield.TextInputEditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:fontFamily="@font/ubuntu_light"
            android:hint="@string/password"
            android:inputType="textPassword"
            android:textColor="#fff"
            app:backgroundTint="#fff" />
    </com.google.android.material.textfield.TextInputLayout>

    <TextView
        android:id="@+id/Login_forgotPass_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginRight="@dimen/_10sdp"
        android:layout_marginBottom="@dimen/_10sdp"
        android:gravity="right"
        android:text="@string/forget_password"
        android:textColor="#FFF"
        android:textSize="@dimen/_15ssp"
        android:textStyle="bold" />

    <androidx.cardview.widget.CardView
        android:id="@+id/log_log_card"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="@dimen/_15sdp"
        android:layout_marginRight="@dimen/_15sdp"
        android:layout_marginBottom="@dimen/_10sdp"
        app:cardBackgroundColor="#fff"
        app:cardCornerRadius="@dimen/_8sdp">

        <TextView
            android:id="@+id/log_login_btn"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:paddingTop="@dimen/_5sdp"
            android:paddingBottom="@dimen/_5sdp"
            android:text="@string/cap_login"
            android:textColor="@android:color/holo_orange_dark"
            android:textSize="@dimen/_20ssp"
            android:textStyle="bold" />
    </androidx.cardview.widget.CardView>

    <androidx.cardview.widget.CardView
        android:id="@+id/log_reg_card"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="@dimen/_15sdp"
        android:layout_marginRight="@dimen/_15sdp"
        app:cardBackgroundColor="#fff"
        app:cardCornerRadius="@dimen/_8sdp">

        <TextView
            android:id="@+id/log_signup_btn"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:paddingTop="@dimen/_5sdp"
            android:paddingBottom="@dimen/_5sdp"
            android:text="@string/cap_register"
            android:textColor="@android:color/holo_orange_dark"
            android:textSize="@dimen/_20ssp"
            android:textStyle="bold" />
    </androidx.cardview.widget.CardView>
</LinearLayout>
java
android
androidx
asked on Stack Overflow Dec 3, 2018 by NaveenKadiyala • edited Jun 9, 2019 by Zoe

3 Answers

2

I was facing something similar and my problem was that one of the layout files was still using the support library after migrating to AndroidX. Found that by reading the whole stack trace.

enter image description here

0

Issues looks like in this styles.

    app:errorTextAppearance="@style/error_appearance"
    app:hintTextAppearance="@style/TextAppearance.App.TextInputLayout

Btw I assumed you have support design library defined in build.gradle

  implementation 'com.google.android.material:material:1.0.0-rc01'
answered on Stack Overflow Dec 3, 2018 by Ramesh Yankati
0

I had the same problem that drove me crazy for a whole day. I found out that my styles document in res folder had other versions (v19 and v23) that still had appcompat in their themes despite fixing that in the regular styles sheet. I just deleted the other styles sheet and it worked.

answered on Stack Overflow Jun 9, 2019 by Axes Grinds

User contributions licensed under CC BY-SA 3.0