问题
I used DataBinding
in one of my classes CardRecicleViewAdapterTech.class
, but I imported a library which does not support DataBinding and I switched to butter knife
for that class.
The problem is that when I run the project, Android Studio
always generates a class binding related with CardRecicleViewAdapterTech.class
and this causes a crash. The generated class is:
CardViewTechBinding.java
I have deleted that java file in Android Studio databinding folder, but its generated again and again even when I do not use databinding
anymore in my xml
or my class
.
This is my layout where I do not using dataBinding
card_view_tech.xml
so that generate CardViewTechBinding.java
even when I am not using dataBinding
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:ProgressWheel="http://schemas.android.com/apk/res-auto"
android:id="@+id/card_tech"
android:layout_width="match_parent"
android:layout_height="250dp"
android:layout_gravity="center"
android:layout_marginTop="@dimen/standard_margin"
android:layout_marginLeft="@dimen/standard_margin"
android:layout_marginRight="@dimen/standard_margin"
card_view:cardCornerRadius="4dp"
card_view:cardBackgroundColor="@color/primary_light">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:text="TextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/text_view_technologie_name" />
<com.pro.soft.apppresentation.ProgressWheel
android:id="@+id/pw_spinner"
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_centerInParent="true"
ProgressWheel:pwText="Authenticating..."
ProgressWheel:pwTextColor="#222"
ProgressWheel:pwTextSize="14sp"
ProgressWheel:pwRimColor="#330097D6"
ProgressWheel:pwBarLength="60dp"
ProgressWheel:pwBarColor="#0097D6"
ProgressWheel:pwBarWidth="5dp"
ProgressWheel:pwRimWidth="2dp" />
</LinearLayout>
</android.support.v7.widget.CardView>
I tried to restart my Pc and Invalidate cache and restart Android Studio but without success. Please help.
回答1:
In this order:
1.- Remove your file generated (build folder)
2.- Clean your project
3.- Invalidate cache and restart Android Studio
4.- Restart computer
回答2:
I had the same issue, and it was caused by having <layout>
root tags in the XML. I did not realise that these tags were databinding related and the compiler also does not help you in this regard.
回答3:
In app build.gradle disable it first by using:
dataBinding {
enabled = false;
}
and sync the project and then enable and sync the project
来源:https://stackoverflow.com/questions/41303467/can-not-remove-generated-databinding-code