2015-03-20 4 views
1

Я показываю свой TimePicker в диалоговом окне. Все отображается правильно, ответчик времени отвечает, и если я прокручиваю/перемещаю наши и минуты, я получаю правильное значение времени при отклонении диалога. Сбой происходит, когда я делаю щелчок по каждому полю. Если я нажму на поле часа и задаю час с помощью экранной клавиатуры, селектор переключится на минуты после ввода моих часов, а после ввода минут, когда вы отпустите диалог, я получаю начальное время, когда был установлен таймер, вместо минут i выбрано/введено.Timepicker не возвращает правильные минуты

Я попытался

timeInput.setOnTimeChangedListener(new OnTimeChangedListener(){ 

      @Override 
      public void onTimeChanged(TimePicker view, int hourOfDay, 
        int minute) { 

       Log.d("timepicker", Integer.toString(hourOfDay) + ":" + Integer.toString(minute)); 

      } 

     }); 

и

int hour = timeInput.getCurrentHour(); 
int minute = timeInput.getCurrentMinute(); 

час значение всегда правильно, значение минуты проблема, когда она прокручивается до требуемого значения регистров изменения и значение это выбор выбранного, с другой стороны, если нажата минута и значение вводится через экранную клавиатуру, изменение не регистрируется.

ответ

0

Я думаю, это должно решить вашу проблему

Calendar now = Calendar.getInstance(); 
timeInput.setCurrentHour(now.get(Calendar.HOUR_OF_DAY)); 
timeInput.setCurrentMinute(now.get(Calendar.MINUTE)); 

просто добавить его перед слушателем, вы пытаетесь выбрать значение, но до того, что вы должны установить текущее время т.е. - SetCurrentTime >> ChangeTimeInPicker >> GetTimeFinally