Android – Múltiplas Activities
Aplicações complexas no Android precisam de mais de apenas uma tela(Activity), então aqui vou mostrar como criar múltiplas Activities. Demonstrarei o uso desse recurso em um programa que calcula a área de um quadrado, uma aplicação clássica. Assumo que já tem uma avd Android 1.5 e o ambiente de trabalho configurado, além de um conhecimento básico do emulador, de Java e do Android. Estarei usando o Eclipse para cria-las, mas você poderá estar usando qualquer outra IDE. Para começar, crie um novo projeto do Android no Eclipse. Uma Activity principal deve ter sido criada no projeto pelo Eclipse e já configurada no Android Manifest, o arquivo de configurações. Abaixo da linha super.onCreate(bundle) na Activity, adicione setContentView(R.layout.main). Isso fará com que a aplicação use as configurações do arquivo xml main na pasta layout para definir a tela. Na estrutura do projeto, navegue até res/layout/main.xml para definir os textBox e o botão que queremos na tela principal para calcular área. Clique na tab main.xml acima do console e cole esse código antes da tag </Linear Layout>:
<EditText android:id=”@+id/Altura” android:layout_height=”wrap_content” android:layout_width=”wrap_content”></EditText>
<EditText android:id=”@+id/Comprimento” android:layout_width=”wrap_content” android:layout_height=”wrap_content”></EditText>
<Button android:layout_width=”wrap_content” android:layout_height=”wrap_content” android:id=”@+id/Ok” android:text=”Ok”></Button>
Agora que já temos tudo configurado precisamos recuperar os valores dos EditText e definir o que acontecerá quando o botão for clicado. Mas antes vamos criar a Activity que exibirá o resultado do cálculo da área. Vá em File -> New -> File, digite activity2 como nome e selecione o pacote em que está trabalhando. Agora digite esse código na Activity principal, abaixo do setContentView:
final EditText comprimento = (EditText) findViewById(R.id.altura);
final EditText altura = (EditText) findViewById(R.id.comprimento);
final Intent it = new Intent(this, activity2.class);
Button b = (Button) findViewById(R.id.Ok);
b.setText("Clique para calcular a área!");
b.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
int comprimentoi = Integer.parseInt(comprimento.getText().toString());
int alturai = Integer.parseInt(altura.getText().toString());
it.putExtra("values", "E o resultado é: " + alturai * comprimentoi);
startActivity(it);
}
});
Aqui nós recuperamos os valores definidos em main.xml com o método findViewById e colocamos um Listener para o botão b, que recuperou o valor do botão ok no arquivo main. No método onClick, que possui o código a ser executado quando o botão for clicado, há apenas uma conversão para int dos valores dos EditText, e, mais importante, um parâmetro foi posto no Intent it pelo método putExtra e a activity activity2 foi iniciada pelo método startActivity.
RECUPERANDO PARÂMETROS
Agora só precisamos exibir o parâmetro do Intent it na activity2. Copie esse código para o método onCreate da activity2:
TextView view = new TextView(this);
view.setText("");
Intent it = getIntent();
if(it != null) {
String msg = it.getStringExtra("values");
if(msg != null) {
view.setText(msg);
}
}
setContentView(view);
Criamos uma nova TextView para exibir os valores, criamos um novo Intent para capturar o Intent que o direcionou para esta Activity, verificamos sua validade, configuramos uma String para achar o parâmetro String “values” passado pela Activity anterior e finalmente configuramos o texto para exibir essa String! Agora está tudo pronto! Abaixo vemos a aplicação em ação:






O Android, sistema operacional open-source desenvolvido pelo Google para smartphones, vem dominando o mercado, e dentro de algum tempo talvez seja até expandido para rodar em netbooks. A linguagem usada para desenvolver aplicaçoes Android é java, e neste tutorial ensinarei como configurar as IDEs Eclipse e Netbeans usando Windows.







SocialVibe