Receber dados do NumberPicker Android

Oie
Decidi implementar o NumberPicker no meu aplicativo
Mas o que eu nao sei é receber o dado quando o botao de mais ou menos é pressionado
Nao sei se é simples
Alguem pode me ajudar?

estou usando assim:

public void numeros(){
		int numero = 0;
		
		NumberPicker np = (NumberPicker) findViewById (R.qtde.numero);
		EditText campoTotal = (EditText) findViewById(R.editText.total);
		String totalString;
		String[] nums = new String[20];
		for (int i = 0; i<nums.length;i++)
			nums[i] = Integer.toString(i);
		
		np.setMinValue(0);
		np.setMaxValue(20);
		np.setWrapSelectorWheel(false);
		np.setDisplayedValues(nums);
		np.setValue(0);
		/*numero = Integer.parseInt(np.getDisplayedValues().toString());
		total += 2 * numero;
		totalString = String.valueOf(total);
		campoTotal.setText(totalString);*/
	}

Mas com certeza nao esta certo pois nao funciona

A intencao é, pegar o valor naquela caixinha, multiplicar com um valor qualquer e mostrar num EditText

Desde ja agradeço!
Vlw

Tente isso:

numero = np.getValue();
campoTotal.setText(""+numero * numeroQualquer);

Cara no seu caso você tem que implementar um listener para o NumberPicker chamado:


 NumberPicker.OnValueChangeListener

essa implentação pode ser feita de diversas formas. Exemplos:

Sua Activity implentar:


public class SuaActivity extends Activity implements  NumberPicker.OnValueChangeListener{
   //seu codigo
  //desse jeito a IDE ira te forçar a implentar o metodo na classe 
   seuNumberPicker.setOnValueChanged(this);
  @Override
  protected NumberPicker.OnValueChangeListener 

   onValueChange(NumberPicker picker, int valorAntigo, int valorAtuall)

                  campoTotal.setText(""+valorAtual* numeroQualquer);
   }

Outra opção é implementar um metodo que retorna o listener e referenciar no seu componente:

public class SuaActivity extends Activity{
   //seu codigo
    seuNumberPicker.setOnValueChanged(seuMetodo);  
   
   protected NumberPicker.OnValueChangeListener seuMetodo(){
      return new NumberPicker.OnValueChangeListener() {
            @Override
            public void onValueChange(NumberPicker picker, int valorAntigo, int valorAtuall) {             
              campoTotal.setText(""+valorAtual* numeroQualquer);
            }
        });
     }
   }

e por ultimo dentre os diversos exemplos esse é o mais comum o que todo mundo ensina, porém o mais dificil para manutenção e provavelmente o que foge das melhores praticas.

public class SuaActivity extends Activity{
   //seu codigo
      seuNumberPicker.setOnValueChangedListener(new NumberPicker.OnValueChangeListener() {
            @Override
            public void onValueChange(NumberPicker picker, int valorAntigo, int valorAtual) {
              campoTotal.setText(""+valorAtual* numeroQualquer);
         
            }
        });              
   }

Assim toda vez que o usuario clicar no botão de +,- ou alterar o valor pelo teclado o seu editText será atualizado.
Espero ter ajudado

Até mais.