Pessoa bom dia, existe ou é possível usar uma Classe para cada arquivo de Layout (xml) no Android?
Se sim, como que faço para indicar ao layout, que tal Classe que vai gerencia-lo?
[quote=Java_Terminator]Pessoa bom dia, existe ou é possível usar uma Classe para cada arquivo de Layout (xml) no Android?
Se sim, como que faço para indicar ao layout, que tal Classe que vai gerencia-lo?[/quote]
É assim que sempre faço, na sua Activity, faça:
setContentView(R.layout.meuLayout);
sim, mais assim vou continuar usando a atividade principal, gostaria de suar outra atividade.
Claro que não, cria uma activity para cada layout…
Exemplo:
LoginActivity.java - layout.login.xml
NovoClienteActivity.java - layout.novo_cliente.xml
Certo entendi, é que estou começando agora, por exemplo, se eu tiver um botão no login.xml, quando clicar no botão
vou colocar essa ação aqui:
setContentView(R.layout.novo_cliente);
então creio eu que ira abri no novo_cliente.xml, certo?
agora como que esse layout vai saber que a classe que o gerencia é a classe NovoClienteActivity.java?
obrigado.
Bom dia!
Estou iniciando os passos no Android também.
No caso é a Activity que deverá saber qual layout ela irá gerenciar.
A classe R é a que possue todos os recursos do Android.
E o Activity representam as telas do Android.
Obrigado consegui entender.
Outra dúvida, como faço passa passar um objeto para outra atividade?
Pessoa pessoa = new Pessoa();
pessoa.setIdade(20);
Intent intent = new Intent();
intent.setClassName("br.com.android", "br.com.android.Nova");
intent.putExtra("pessoa", pessoa);//AQUI O ERRO
intent.putExtra("nome", nome);
O atributo String nome eu consigo perfeitamente, agora o pessoa da erro no compilador, diz que não é permitido…
tem que fazer algum procedimento antes?
OBS: Minha classe implementa Serializable.
Obrigado.
[quote=Java_Terminator]Obrigado consegui entender.
Outra dúvida, como faço passa passar um objeto para outra atividade?
Pessoa pessoa = new Pessoa();
pessoa.setIdade(20);
Intent intent = new Intent();
intent.setClassName("br.com.android", "br.com.android.Nova");
intent.putExtra("pessoa", pessoa);//AQUI O ERRO
intent.putExtra("nome", nome);
O atributo String nome eu consigo perfeitamente, agora o pessoa da erro no compilador, diz que não é permitido…
tem que fazer algum procedimento antes?
OBS: Minha classe implementa Serializable.
Obrigado.[/quote]
Crie um objeto Bundle, e popule ele.
j0nny obrigado pela dica, mais como que crio e populo um Bundle.
[quote=Java_Terminator]j0nny obrigado pela dica, mais como que crio e populo um Bundle.
[/quote]
http://developer.android.com/reference/android/os/Bundle.html
Uma dica, a documentação do Android é fantástica.
Obrigado, vou verificar.