NoSuchFieldError: nessun campo statico listView1 di tipo I nella classe Lcom / disdemo / R $ id; o le sue superclassi


88

Ho module1 (in Android Studio) con listView1 in activity_main.xml(presente in res del module1). La MainActivity di questo modulo viene lanciata da un altro module2 nello stesso progetto Android Studio.

Ho provato a cancellare il module1 e di nuovo a crearne uno nuovo con gli stessi file res e java. Sto ancora riscontrando lo stesso problema.


Ho aggiunto il modulo in settings.gradle e build.gradle
Komal Gupta

14
Avevo anche il layout activity_main.xml in uno dei miei altri moduli, quindi ricevevo questo errore NoSuchField. Ho rinominato il layout in uno dei miei moduli e ha funzionato.
Komal Gupta

Vorrei leggere il tuo commento 48 ore fa, ho lottato con questo problema da 2 giorni fa !!
Mani

2
Il mio caso era leggermente diverso, poiché avevo spostato una risorsa stringa da un modulo a un altro. Nel mio caso dovevo solo fare clic su Build> Clean in Android Studio per risolvere il problema.
Tony Wickham

Sì, per te non è stato un problema di file di risorse duplicato, quindi pulito -> build ha funzionato.
Komal Gupta

Risposte:


200

Penso che tu abbia layout sia nella libreria che nel modulo con lo stesso nome o gonfiando più layout xml con ID risorsa duplicato.


4
Sì, esattamente quello era il caso. L'ho capito presto, ma la cosa triste è che è stato sprecato un sacco di tempo in questo, poiché il messaggio di errore non era abbastanza intuitivo. Android Studio dovrebbe iniziare a registrare messaggi di errore più completi.
Komal Gupta

6
suona bene! ora dovresti contrassegnarlo come approvato in modo che questo possa aiutare un altro a risolvere questo tipo di problema.
JosephM

1
Se usi il refactor-rename di AS, rinomina tutte le occorrenze di eg activity_main.xml, meglio farlo a mano.
serv-inc

Ho ricevuto questo errore a causa di due layout con lo stesso nome nell'app e nel modulo. Grazie!
Sandeep Yohans

30

In entrambi i moduli, hai un file activity_main.xml. Rinomina un file.

Aggiornamento: ciò che @kundan kamal vuole esprimere è che hai un file di layout in entrambi i moduli con un nome simile.


2
questo sprecato per 3 ore :(. mi salvi la giornata
karthik kolanji

8

hai usato più moduli e dai lo stesso nome di qualsiasi layout xml, quindi dai questo errore quindi rinomina il tuo layout xml.


Grazie. Ha aiutato
Vigneswaran A


0

Questo tipo di errore è accaduto una volta a me, ma con una stringrisorsa. Avevo la stringa configurata in un file di traduzione, ma non nel file di risorse stringa predefinito, quindi questo ha prodotto l'arresto anomalo.


0

Rendimi corretto Se non sbaglio ... penso che tu abbia lo stesso nome della libreria e del modulo nel tuo progetto quindi devi rinominarne uno quindi funziona bene

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.