0

I just recovered a project, which was broken by Android Studio (crashed and overwrote all files except for MainActivity). I used parts of my old backup of V1.0 (currently at V3.1) and recovered some code with an app (Show Java). The problem is that all occurences of the constraintLayout are showing as grey boxes. I am using

implementation "androidx.constraintlayout:constraintlayout:1.1.3"

I have googled it already and haven't found a solution, which would work out for me.

Example.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout  
    xmlns:android="http://schemas.android.com/apk/res/android"  
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:aapt="http://schemas.android.com/aapt" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent">

    <TextView
        android:textSize="18sp"
        android:gravity="center"
        android:id="@+id/reset_game_disclaimer"
        android:layout_width="346dp"
        android:layout_height="87dp"
        android:layout_marginTop="160dp"
        android:text="@string/reset_game_are_you_sure"
        app:layout_constraintEnd_toEndOf="0"
        app:layout_constraintStart_toStartOf="0"
        app:layout_constraintTop_toTopOf="0"/>

    <Button
        android:textSize="16sp"
        android:textColor="#ffffff"
        android:id="@+id/button_reset_game"
        android:background="@drawable/rounded_button"
        android:layout_width="200dp"
        android:layout_height="49dp"
        android:text="@string/reset_game"
        android:backgroundTint="#ffb00020"
        app:layout_constraintBottom_toBottomOf="0"
        app:layout_constraintEnd_toEndOf="0"
        app:layout_constraintStart_toStartOf="0"
        app:layout_constraintTop_toBottomOf="@+id/reset_game_disclaimer"
        app:layout_constraintVertical_bias="0.705"/>

</androidx.constraintlayout.widget.ConstraintLayout>

Stracktrace

java.lang.NoClassDefFoundError: androidx/constraintlayout/widget/R$styleable
at androidx.constraintlayout.widget.ConstraintLayout.init(ConstraintLayout.java:599)
at androidx.constraintlayout.widget.ConstraintLayout.<init>(ConstraintLayout.java:576)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:403)
at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:186)
at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:144)
at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadView(LayoutlibCallbackImpl.java:309)
at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:418)
at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:429)
at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:333)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)
at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
at android.view.LayoutInflater.inflate(LayoutInflater.java:394)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:323)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:394)
at com.android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.java:200)
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:572)
at com.android.tools.idea.rendering.RenderTask.lambda$inflate$5(RenderTask.java:698)
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Md. Asaduzzaman
  • 14,963
  • 2
  • 34
  • 46
BlazeCodeDev
  • 631
  • 1
  • 7
  • 27

1 Answers1

2

Try to upgrade the dependency to latest version. Also upgrade your project to AndroidX

dependencies {
    implementation "androidx.constraintlayout:constraintlayout:2.0.0-beta4"
}

Check this to upgrade your project to AndroidX.

Md. Asaduzzaman
  • 14,963
  • 2
  • 34
  • 46
  • My project was already migrated to AndroidX and the dependency above worked, except for layout files having a transparent background. How do I fix that? – BlazeCodeDev Jan 28 '20 at 18:59