Boa tarde !
Estou fazendo um app simples de cadastro de pessoas, e me deparei com um problema, pois ainda estou aprendendo a desenvolver para android.
Bom, nos arquivos XML que definem os layouts(telas), é possível específicar os IDs dos components para poderem ser recuperados nas activities e services, mas ai parei para pensar na seguinte situação:
E quando uma app possuir varios layouts, por exemplo, e nesses layouts um ou mais components possuírem o ID identico a um de outro layout, por exemplo
btnCadastrar(@+id/btnCadastrar) no layout principal(main.xml)
e btnCadastrar(@+id/btnCadastrar) em um outro layout qualquer(layoutQualquer.xml)…
Como ficaria a diferenciação de um para o outro na hora de recupera-los pelo ID? sendo que o android ja cira uma classe chamada R que possuí inner classes e uma delas é id, onde possuí varias referencias estáticas aos ids dos components.
Alguém consegue me esclarecer isso ?
OBS: Eu estou usando o AndroidAnnotations para fazer injeção de dependencias.
OBS2: Também tentei fazer algo para diferenciar os IDs, mas acabou causando erro de compilação identificado pelo AndroidAnnotation, pois fiz o seguinte:
Declarei os ids separados por layout, por exemplo, para os components do layout principal(main.xml) declarei-os da seguinte forma: @+formMain/idComponent.
Mas isto causa erro de compilação: [color=red]Id value not found in R.id: 2131165186[/color] e [color=red]Id not found: R.id.btnCadastrar or R.id.btn_cadastrar[/color]