Sie beziehen sich auf Android resources
, die bereits im Android-System definiert sind, mit @android:id/..
während Sie für den Zugriff auf Ressourcen, die Sie in Ihrem Projekt definiert/erstellt haben, die @id/..
Mehr Infos
Wie Sie im Chat klarstellten, sagten Sie, Sie hätten ein solches Problem:
Wenn wir die android:id="@id/layout_item_id"
es funktioniert nicht. Stattdessen @+id/
funktioniert, wo liegt also der Unterschied? Und das war meine ursprüngliche Frage.
Nun, es hängt vom Kontext ab, wenn Sie das XML-Attribut von android:id
angeben, dann geben Sie eine neue ID an und weisen den Parser (oder nennen Sie ihn den Builder) an, einen neuen Eintrag in R.java
Daher müssen Sie eine +
Zeichen.
Während im anderen Fall, wie android:layout_below="@id/myTextView"
beziehen Sie sich auf eine bereits erstellte ID, so dass der Parser diese mit der bereits erstellten ID in R.java
.
Wieder mehr Infos
Wie Sie in Ihrem Chat sagten, beachten Sie, dass android:layout_below="@id/myTextView"
erkennt ein Element mit id nicht myTextView
wenn sie nach dem Element, in dem sie verwendet wird, geschrieben wird.