Livro 2 - Projeto da Mini-Calculadora

7. Adicionado a Lógica da Aplicação

7.5. Implementação da interface SeekBarListener

De acordo com a iteração do usuário, o tratamento de eventos de uma SeekBar dispara três métodos: onProgressChangedonStartTrackingTouch onStopTrackingTouch.  Para  o  nosso  caso,  é necessário implementar apenas o primeiro, o resto fica em branco. Assim, a se mover a barra de progresso o programa deve atualizar o novo valor da porcentagem. Contudo, lembre que o valor da barra de progresso na SeekBar varia de 0 a 30, assim o novo valor de porcentagem deve receber o valor inteiro da barra de progresso e converter em %, isto é, dividir por 100. Por fim, invoca-se o método calculate() para refazer os cálculos da aplicação.

private final SeekBar.OnSeekBarChangeListener seekBarListener = new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
//atualiza o valor da porcentagem com o novo valor selecionado
percent = i/100.0;
//mostrar o valor da porcentagem atualizado na tela
percentTextView.setText(percentFormat.format(percent));
//manda (re)calcular os valores
calculate();
}

@Override
public void onStartTrackingTouch(SeekBar seekBar) {}

@Override
public void onStopTrackingTouch(SeekBar seekBar) {}
};