Попытка настроить NumberPicker для отображения значения в тосте

#java #android #android-number-picker

#java #Android #android-средство выбора номеров

Вопрос:

Я использую инструмент NumberPicker в Android, и я изменил значение целого числа на String, чтобы иметь возможность отображать его в методе Toast, который я использовал Integer.toString , но я не думаю, что проблема в этом.

Дело в том, что когда я нажимаю на свою кнопку, независимо от того, какое значение я выбираю в NumberPicker, оно показывает (0). Я использую .getValue(); то, что показано ниже.

Как мне заставить его получить значение, которое я установил в NumberPicker?

 numPickerMin = (NumberPicker) findViewById(R.id.numberPickerMinute);

//Min
numPickerMin.setMaxValue(60);
numPickerMin.setMinValue(0);
numPickerMin.setWrapSelectorWheel(false);

int getvalueminute = numPickerMin.getValue();
final String getValMin= Integer.toString(getvalueminute);

silentButton.setOnClickListener(
  new Button.OnClickListener(){
     public void onClick(View v){
       Toast.makeText(MainActivity.this,getValMin,Toast.LENGTH_LONG).show();
     }
  }
);
 

Ответ №1:

Вы получаете значение средства выбора после его инициализации, поэтому оно всегда будет равно 0. Насколько я понимаю ваш код, вы хотите показать правильное значение в тосте после нажатия кнопки? Вы должны переместить эти строки внутрь OnClickListener:

int getvalueminute = numPickerMin.getValue();
String getValMin= Integer.toString(getvalueminute);

Комментарии:

1. Правильно, это то, что я хочу сделать. И то, что вы предложили, не сработало.

2. Понял. Спасибо тебе, великодушный незнакомец.