3 - Processando a resposta
O processamento é um raciocínio meramente algorítmico. Temos que criar um número aleatório e verificar se é ímpar ou par.:
- int numero = (new Random()).nextInt(50);
- int resultado = numero % 2;
A variável "numero" recebe um número aleatório criado pelo método nextInt (cujo parâmetro é o número máximo somado de 1, desde 0, que poderá ser sorteado, ou seja, nextInt(50) é um número entre 0 e 50, excluindo o 50) e que precisa da importação de java.util.Random, a própria IDE deve reclamar disso, pondo um ponto de erro na linha e uma sugestão de correção com a importação.
- import java.util.Random;
Este código vai na MainActivity.java, conforme explicado no post anterior.
4 - Exibindo a resposta modificando a interface
Usando uma interface simples, vamos alterar o texto "Hello World!" para "Cara" ou "Coroa", se a variável "resultado" for igual a 1 ou 0, respectivamente (ou vice-versa). Para alterar o conteúdo, é preciso armazenar o "ID" do elemento da interface usando o método findViewById. O código fica o seguinte:
- /** Chamado ao pressionar OK */
- public void processar(View view) {
- TextView editText = (TextView) findViewById(R.id.textView1);
- String mensagem = editText.getText().toString();
- int numero = (new Random()).nextInt(50);
- int resultado = numero % 2;
- if(resultado == 0){
- mensagem = "Cara";
- }
- else{
- mensagem = "Coroa";
- }
- editText.setText(mensagem);
- }
A variável "mensagem" é iniciada com o conteúdo "Hello World!" só para aproveitar o código do último post. Poderia ser vazia. A "editText" identifica o elemento (como um form) que contém o texto e possui um método para alterar o texto desse elemento, que é usado na última linha, o setText().
Vamos aprimorar a interface e, em vez de mostrar o resultado com texto, vamos mostrar uma moedinha mesmo (sem animações, só a figura mesmo, mais informações sobre figuras no site do Android Developer).
Primeiro, você deverá trazer suas figuras de cara e coroa para o acervo de imagens. Para isso, copie as imagens desejadas e, no Eclipse, na pasta res/drawable-hdpi (pode ser também mdpi ou ldpi, vi aqui), clique com o botão direito e cole. Atenção ao tamanho das figuras, que deve ser pequeno. Para mais informações, existe uma série de explicações no Android Developer. Quanto à extensão, consegui com .gif e com .png como pode ser visto na figura abaixo.
ic_action_cara.png foi uma tentativa frustrada de carregar a imagem pelo Create New Icon do Eclipse. Só consegui mesmo copiando e colando na pasta drawable |
No MainActivity.java, antes do if que avalia o resultado, crie um objeto para receber a imagem padrão.
- ImageView imagem = (ImageView) findViewById(R.id.imageView1);
Dentro do correspondente if/else, mude o conteúdo do objeto para a imagem de cara ou de coroa:
- imagem.setImageResource(R.drawable.nome_arquivo_cara_ou_coroa); //OBS: Sem o .png
O método fica, então:
- /** Chamado ao pressionar OK */
- public void processar(View view) {
- TextView editText = (TextView) findViewById(R.id.textView1);
- String mensagem = editText.getText().toString();
- ImageView imagem = (ImageView) findViewById(R.id.imageView1);
- int numero = (new Random()).nextInt(50);
- int resultado = numero % 2;
- if(resultado == 0){
- mensagem = "Cara";
- imagem.setImageResource(R.drawable.cara);
- }
- else{
- mensagem = "Coroa";
- imagem.setImageResource(R.drawable.coroa);
- }
- editText.setText(mensagem);
- }
Resultado:
Tela Inicial |
Apresentação do resultado |
5 - Instalando o aplicativo no celular
No Eclipse, na esquerda, onde ele mostra os diretórios, vá em bin/res e copie o caraCoroa.apk (ou o nome que você deu a seu projeto) para o celular. Abra-o no celular e instale.
Fontes de Consulta:
Stack Overflow
Mkyong.com
9 comentários:
I prefer to study this kind of material. Nicely written information in this post, the quality of content is fine and the conclusion is lovely. Things are very open and intensely clear explanation of issues
Best software Training institute in Bangalore
Best Linux Training institute in Bangalore
Best Data Science institute in Bangalore
Actually I read it yesterday but I had some thoughts about it and today I wanted to read it again because it is very well written.
data analytics courses
machine learning course malaysia
big data analytics malaysia
data science course
Awesome post...
internship report on python
free internship in chennai for ece students
free internship for bca
internship for computer science engineering students in india
internships in hyderabad for cse students 2018
electrical companies in hyderabad for internship
internships in chennai for cse students 2019
internships for ece students
inplant training in tcs chennai
internship at chennai
good....nice
category/advocate-resume
category/agriculture-forestry-fishing
category/android-developer-resume
category/assistant-professor-resume
category/chartered-accountant-resume
category/database-resume
category/design-engineer-resume
category/developer-resume
category/engineer-resume
category/entrepreneur-and-financial-services-resume
It's really nice and meanful. it's really cool blog. Linking is very useful thing.you have really helped lots of people who visit blog and provide them usefull information.
big data course malaysia
data scientist course in malaysia
data analytics courses
360DigiTMG
I have bookmarked your website because this site contains valuable information in it. I am really happy with articles quality and presentation. Thanks a lot for keeping great stuff. I am very much thankful for this site.
Salesforce Training in Chennai
Salesforce Online Training in Chennai
Salesforce Training in Bangalore
Salesforce Training in Hyderabad
Salesforce training in ameerpet
Salesforce Training in Pune
Salesforce Online Training
Salesforce Training
Wonderful article, very useful and well explanation. Your post is extremely incredible. I will refer this to my candidates...data science courses
Informative blog, big thumbs up for sharing this blog with us.
Data Science Institute in Hyderabad
Thanks for sharing this information. I really like your blog post very much. You have really shared a informative and interesting blog post .Signova Group
Postar um comentário