Upload
djhao
View
47
Download
0
Embed Size (px)
Citation preview
Autor: Darlan Dieterich
GDM-TSI UFSM
Calculadora
1º passo – Criando Layout para o dispositivo
- Crie um novo projeto Android em seu Eclipse.
- Agora vamos desenvolver o layout de sua aplicação, para isso você pode usar o próprio recurso que o Eclipse traz, o Graphical Layout que esta na aba do seu arquivo XML, ou até mesmo usar uma ferramenta exclusiva para desenvolver o Layout de seu projeto, chama-se DroidDraw, acesse o link caso haja interesse, pois é bem simples de usar, arraste componentes e molde da sua forma e gere o arquivo XML, http://droiddraw.org/.
- O projeto vai contar com os quatro principais tipos aritméticos, soma, divisão, multiplicação e subtração, e para tudo isso é preciso de dois campos para entrada de valores, e também um TextView para a saida dos resultado, e ainda mais um botão para iniciar o evento.
- Crie da sua forma desejada o Layout, mas lembrando que você vai precisar de:
TextView campo1 ;
TextView campo2 ;
Radio Group (lembre que as opções do Radio Button devem ficar dentro do Radio Group, para seleção única, por isso crie primeiro um RadioGroup e em seguida as opções RadioButton );
RadioButton sum ;
RadioButton divid ;
RadioButton subt ;
RadioButton multi ;
Button calc ;
TextView result ;
- Então o código ficaria assim:
<?xml version="1.0" encoding="utf-8" ?> <LinearLayout android:id="@+id/widget41" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android" > <LinearLayout
Autor: Darlan Dieterich
GDM-TSI UFSM
android:id="@+id/widget29" android:layout_width="200px" android:layout_height="360px" android:orientation="vertical" > <TextView android:id="@+id/txtvalue1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Valor 1:" > </TextView> <EditText android:id="@+id/campo1" android:layout_width="150px" android:layout_height="wrap_content" android:textSize="18sp" > </EditText> <TextView android:id="@+id/txtvalue2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Valor2:" > </TextView> <EditText android:id="@+id/campo2" android:layout_width="150px" android:layout_height="wrap_content" android:textSize="18sp" > </EditText> <RadioGroup android:id="@+id/group" android:layout_width="150px" android:layout_height="180px" android:orientation="vertical" > <RadioButton android:id="@+id/sum" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Soma" android:checked="true" > </RadioButton> <RadioButton android:id="@+id/subt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Subtracção" > </RadioButton> <RadioButton android:id="@+id/divid" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Divisão" > </RadioButton>
Autor: Darlan Dieterich
GDM-TSI UFSM
<RadioButton android:id="@+id/multi" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Multiplicação" > </RadioButton> </RadioGroup> <TextView android:id="@+id/result" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Resultado:" > </TextView> </LinearLayout> <Button android:id="@+id/calc" android:layout_width="100px" android:layout_height="40px" android:layout_marginLeft="100px" android:text="Calcular" > </Button> </LinearLayout>
- O layout vai ficar como essa figura abaixo, para testar é só compilar, lembrando que ainda não esta pronta, falta a parte lógica da calculadora!
Autor: Darlan Dieterich
GDM-TSI UFSM
2º passo – Criando a parte lógica da calculadora
- Agora vem a parte mais interessante, e para isso deve se ter muita atenção
- Abaixo esta todo o código fonte comentado, do seu arquivo .java
package br.com.calculadora; //importando as classes necessárias import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.RadioButton; import android.widget.TextView; /** * @author dieterich */ public class calculadora extends Activity implements OnClickListener { //declarando as variaveis que serão usadas na aplic ação private TextView campo1; private TextView campo2; private TextView result; private RadioButton sum; private RadioButton divid; private RadioButton subt; private RadioButton multi; private Button calc; @Override public void onCreate(Bundle icicle) { super .onCreate(icicle);
//define onde esta a interface do projeto
setContentView(R.layout.main );
// associa os objetos setados com os objetos do lay out do seu XML campo1 = (TextView) this .findViewById(R.id.campo1); campo2 = (TextView) this .findViewById(R.id.campo2); result = (TextView) this .findViewById(R.id.result ); sum = (RadioButton) this .findViewById(R.id.sum); divid = (RadioButton) this .findViewById(R.id.divid ); subt = (RadioButton) this .findViewById(R.id.subt ); multi = (RadioButton) this .findViewById(R.id.multi ); calc = (Button) this .findViewById(R.id.calc ); // executa o evento onclick
Autor: Darlan Dieterich
GDM-TSI UFSM
calc.setOnClickListener(this ); } //executa o evento das opções quando clicado, efetu ando a checagem das operações, chamando as funções public void onClick(View arg0) { if (multi.isChecked()) { multiplicar(); } if (sum.isChecked()) { somar(); } if (subt.isChecked()) { subtrair(); } if (divid.isChecked()) { dividir(); } } //função de cada evento das opções aritméticas protected void multiplicar() { double val1 = Double.parseDouble (campo1.getText().toString()); double val2 = Double.parseDouble (campo2.getText().toString()); //joga no campo TextView o resultado da operação result.setText("Resultado: " + Double.toString (val1 * val2)); } protected void somar() { double val1 = Double.parseDouble (campo1.getText().toString()); double val2 = Double.parseDouble (campo2.getText().toString()); result.setText("Resultado: " + Double.toString (val1 + val2)); } protected void dividir() { double val1 = Double.parseDouble (campo1.getText().toString()); double val2 = Double.parseDouble (campo2.getText().toString()); result.setText("Resultado: " + Double.toString (val1 / val2)); } protected void subtrair() { double val1 = Double.parseDouble (campo1.getText().toString()); double val2 = Double.parseDouble (campo2.getText().toString());
Autor: Darlan Dieterich
GDM-TSI UFSM
result.setText("Resultado: " + Double.toString (val1 - val2)); } }
- Agora é só compilar e testar a sua calculadora.