У меня есть выбор номера для минут. Первоначально я установил отображаемые значения с 15-минутными интервалами. т. е. 0,15,30, 45, что означает, что минимальное значение равно 1, а максимальное значение равно 4. При выборе пользователем параметра меню я хочу динамически изменить тот же набор номеров, чтобы иметь 5-минутные интервалы, что означает, что отображаемые значения будут 0,5, 10... 50,55 Мин. останется 1, а макс. будет 12.
Он отлично работает с начальными настройками для обоих типов. Однако я получаю массив из индекса, когда пытаюсь изменить максимальное значение или отображаемые значения. Проблема возникает при изменении характеристик в обе стороны, т. е. с интервалами от 15 до 5 или от 5 до 15 минут.
Вопрос в том, что я делаю что-то не так, или это вообще невозможно с выбором номера. Мой пример кода ниже. Благодарю.
private void setMinsPicker(String opt) {
String[] mins15 = { "0", "15", "30", "45" };
String[] mins5 = { "0", "5", "10", "15", "20", "25", "30", "35", "40",
"45", "50", "55" };
final String[] mins;
if (opt == "15") {
mins = mins15;
} else {
mins = mins5;
}
numPickerMinutes = (NumberPicker) findViewById(R.id.pMinutes);
int ml = mins.length;
numPickerMinutes.setMinValue(1);
numPickerMinutes.setDisplayedValues(mins);
numPickerMinutes.setMaxValue(ml);
}