782 Stimmen

"kann symbol R nicht auflösen" in Android Studio

In jedem Fall in all meinen Klassen, in denen ich auf R.id.etwas verweise, ist das R in Rot und es steht "Symbol R kann nicht aufgelöst werden". Auch jedes Mal, wenn es R.layout.etwas gibt, wird es rot unterstrichen und es heißt "Methode setContentView(?) kann nicht aufgelöst werden". Das Projekt baut immer problemlos. Es ist ärgerlich, das die ganze Zeit zu sehen. Ich habe viele andere Fragen zu einem ähnlichen Problem gelesen, aber die meisten betrafen den Import von Projekten aus Eclipse. Ich verwende, was ich für die neueste Version von Android Studio halte, und das Projekt wurde mit Android Studio erstellt und funktionierte ohne "R kann nicht aufgelöst werden" Probleme. Ich würde gerne wissen, was das verursacht, wenn jemand es weiß.

736voto

Ich hatte dieses Problem auch. Ein einfaches 'gradlew clean' und 'gradlew build' hat geholfen.


Klicke auf Build->Clean Project und das wird ein Gradle Clean durchführen

236voto

Tom C. Punkte 2403

In den neuesten Versionen von Android Studio funktioniert zumindest für mich folgendes:

"Tools" -> "Android" -> "Projekt mit Gradle-Dateien synchronisieren"

In der neuesten Version von Android Studio 3.1.3 (Juli 2018) ist "Projekt mit Gradle-Dateien synchronisieren" in der Menüleiste verfügbar.

Bildbeschreibung eingeben

162voto

Tushar Monirul Punkte 4764

Ich habe Gradle 3.3.0 benutzt. Das war der Haupttäter. 6,50 Stunden meines Lebens wurden verschwendet. Gradle 3.2.1 hat den Fehler behoben.

classpath 'com.android.tools.build:gradle:3.2.1'

Das Problem wurde behoben, nachdem ich die Gradle-Version geändert habe. Die Details können hier gefunden werden.

112voto

Mina Fawzy Punkte 19437

Ich habe ein ähnliches Problem und das habe ich gemacht:

Projekt bereinigen und Projekt mit Gradle synchronisieren,

Bildbeschreibung hier eingeben

Überprüfen Sie die buildTools-Version in meinem SDK Bildbeschreibung hier eingeben

Von build.gradle (Modul) ändern Sie minSdkVersion von 8 auf 9

defaultConfig {
        applicationId "Paketname"
        minSdkVersion 9
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }

Aber das hat alles nicht geholfen.

Schließlich habe ich die Antwort gefunden (das hat in meinem Fall funktioniert)

Ändern Sie von build.gradle (Modul: app)

android {
    compileSdkVersion 21
    buildToolsVersion '21.0.1'
......
....
}

Oder

Wählen Sie Datei | Projektstruktur und ändern Sie die Build-Tools-Version auf 21.1.1

Bildbeschreibung hier eingeben

59voto

Iurii Vasylenko Punkte 2952
  1. Überprüfen Sie Ihre XML-Dateien.
  2. Projekt bereinigen.

Das war es.

Zum Beispiel hatte ich einen Eintrag in meiner strings.xml:

Einige Text

Und in activity_main.xml habe ich diesen String-Eintrag verwendet

Während ich an dem Projekt gearbeitet hatte, habe ich das gelöscht

 Einige Text

Und folglich wurde activity_main.xml nicht mehr gültig. Als Ergebnis: kann R nicht auflösen.

Also, überprüfen Sie Ihre *.xml Dateien und bereinigen Sie das Projekt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X