Fala galera se alguem puder me ajudar, estou fazendo um trabalho na faculdade e preciso fazer uma calculadora com spinner, tentei fazer mas nao para de dar um erro.
package com.example.myapplication3;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private EditText editText1;
private EditText editText2;
private TextView textView3;
private Spinner spinner1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editText1 = (EditText) findViewById(R.id.editText1);
editText2 = (EditText) findViewById(R.id.editText2);
textView3 = (TextView) findViewById(R.id.textView3);
spinner1 = (Spinner) findViewById(R.id.spinner1);
String[] opcao = {"Soma", "Subtração", "Multiplicação", "Divisão"};
// Define a forma de aprsetnação da opções: DropDown
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, opcao);
//Prepara a ligação com o Spinner
ArrayAdapter<String> spinnerArrayAdapter = arrayAdapter;
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
// Realiza o preenchimento do Spinner
spinner1.setAdapter(arrayAdapter);
proceso();
}
public void processo () {
spinner1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView av, View v, int p, long id) {
try {
if (p == 0)
textView3.setText("Resultado: Selecione a Operação");
else {
int valor1 = Integer.parseInt(editText1.getText().toString());
int valor2 = Integer.parseInt(editText2.getText().toString());
int total = 0;
switch (p) {
case 1:
total = valor1 + valor2;
break;
case 2:
total = valor1 - valor2;
break;
case 3:
total = valor1 * valor2;
break;
case 4:
total = valor1 / valor2;
}
textView3.setText("Resultado:" + total);
}
} catch (NumberFormatException e) {
textView3.setText("Resultado: faltam dados");
} catch (ArithmeticException e) {
textView3.setText("Resultado: Erro na operação");
}
}
}
}
}