Ich habe also Android Studio ausprobiert, weil ich Resharper wirklich mag und festgestellt habe, dass die IDE einige ihrer Funktionen integriert hat. Nachdem ich nun ein neues Standardprojekt erstellt hatte, fügte ich eine neue Layout-Datei hinzu und wollte das bestehende Standard 'hello world' Beispiel-Layout ändern, und ich bekam einen "URI ist nicht registriert" Fehler in den folgenden Zeilen:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
Ich habe an dem standardmäßig generierten Projekt noch nichts weiter verändert. Ich bin auf eine andere Frage gestoßen, die damit zusammenzuhängen scheint (https://stackoverflow.com/questions/6147051/intellij-android-project-schema-uri-not-registered), aber einfach etwas zu ignorieren, kommt mir seltsam vor. Ich habe es tatsächlich versucht, aber das führt dazu, dass RelativeLayout
(und wahrscheinlich alle anderen Android-bezogenen Dinge) nicht mehr erkannt werden (Fehlermeldung: "Cannot find the declaration of element 'RelativeLayout'").
Irgendwelche Ideen, wie man dieses Problem lösen kann?
Sie haben dieses Problem, weil Sie am falschen Ort sind! Das richtige Verzeichnis für die Layout-Ressourcendatei muss sich unter "res-layout" befinden, nicht unter "res-all-layout"
Ich benutze Intellij IDEA, aber ich denke, es wird auch in Android Studio funktionieren, können Sie die "Event Log" auf IDE rechten unteren Ecke zu sehen, hat es eine Nachricht wie die "Android-Framework wird im Projekt Configure" erkannt, das bedeutet, dass Sie eine Rahmenkonfiguration haben sollte. Wenn ja, folgen Sie einfach dem Link in der Meldung;
Auf die gleiche Weise können Sie zu "Datei > Projektstruktur > Module" gehen, und dann eine Android-Facette hinzufügen.
Übrigens, wenn ich einen benutzerdefinierten Namespace verwenden möchte, wie Sie es tun, schreibe ich den Ressourcenkennzeichner als meinen Paketnamen, wenn ich das AndroidManifest.xml-Paketattribut des Manifest-Elements definiere, unten ist mein Code.
<manifest package="com.my.name.android">
...
</manifest>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/apk/res/com.my.name.android">
</RelativeLayout>
Hoffentlich hilft Ihnen das.
Das neue Build-System in Android Studio erstellt einen build
-Ordner. Die Code-Inspektion greift auf diesen Ordner sowie den Ordner "Gradle" zu. Diese Ordner sollten wahrscheinlich ignoriert werden, wenn die Code-Inspektion ausgeführt wird.
Ich habe ein Problem mit dem Android Studio Team angesprochen: