você se refere a Android resources
, que já está definido no sistema Android, com @android:id/..
tempo para acessar os recursos que você definiu / criou em seu projeto, você usa@id/..
Mais informações
Conforme seus esclarecimentos no bate-papo, você disse que tem um problema como este:
Se usarmos android:id="@id/layout_item_id"
, não funciona. Em vez disso @+id/
funciona, então qual é a diferença aqui? E essa foi a minha pergunta original.
Bem, isso depende do contexto, quando você está usando o atributo XML de android:id
, então você está especificando um novo ID e instruindo o analisador (ou chamá-lo de construtor) para criar uma nova entrada R.java
, portanto, você deve inclua um +
sinal.
Enquanto, no outro caso, android:layout_below="@id/myTextView"
você está se referindo a um ID que já foi criado, portanto o analisador vincula isso ao ID já criado R.java
.
Mais informações novamente
Como você disse em seu bate-papo, observe que android:layout_below="@id/myTextView"
não reconhecerá um elemento com id myTextView
se ele for escrito após o elemento em que ele está sendo usado.