>

Fórum

Fórum da RL System, voltado para analistas, programadores etc. Tudo sobre linguagem de programação e desenvolvimento Full Stack: Banco de Dados, Android, C#, Java, .NET, PHP, Node, Javascript, TypeScript, Front, HTML e muito mais.



Resultado automático, sem a necessidade de um botão para efetuar o cálculo


Alguém pode me ajudar verificando pq não funciona?

private EditText txtNumero1;
private EditText txtNumero2;
private EditText txtResult;

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.calculo);

txtNumero1 = (EditText) findViewById(R.id.num1);
txtNumero2 = (EditText) findViewById(R.id.num2);
txtResult = (EditText) findViewById(R.id.resultado);

txtNumero1.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
Calculo();
}
});

txtNumero2.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
Calculo();
}
});
}

private void Calculo(){
double valor1 = Double.parseDouble(txtNumero1.toString());
double valor2 = Double.parseDouble(txtNumero2.toString());

txtResult.setText(String.valueOf(valor1 + valor2));
}



2 Respostas




RESOLVIDO


EditText etNum1,etNum2,etResultado; //Declarando as Variáveis
double num1, num2, resultado;
Button btSomar;


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.calculadora);

//continuação da Calculadora
etNum1 = (EditText) findViewById(R.id.numero1);
etNum2 = (EditText) findViewById(R.id.numero2);
etResultado = (EditText) findViewById(R.id.resultado);



//ação no campo mandando executar o cálculo
etNum1.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
Calculo();
}
});

etNum2.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
Calculo();
}
});

}

private void Calculo(){

num1 = Double.parseDouble(etNum1.getText().toString());
num2 = Double.parseDouble(etNum2.getText().toString());
resultado = num1 num2;
etResultado.setText(String.valueOf(resultado));
}