2016-07-04 2 views
1

Попытка выяснить диалоговое окно timepicker в android. Проблема, с которой я столкнулась, заключается в том, что, когда я выбираю время и помещаю его в поле TextView, все предыдущие нули удаляются. 06:05 показан как 6: 5. Как я могу сохранить предыдущие нули?Диалоговое окно Android timepicker не возвращает никаких предшествующих нулей

код моего timepicker:

ic_BedtimePicker.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       Calendar mcurrentTime = Calendar.getInstance(); 
       int hour = mcurrentTime.get(Calendar.HOUR_OF_DAY); 
       int minute = mcurrentTime.get(Calendar.MINUTE); 
       TimePickerDialog mTimePicker; 
       mTimePicker = new TimePickerDialog(getActivity(), new TimePickerDialog.OnTimeSetListener() { 
        @Override 
        public void onTimeSet(TimePicker timePicker, int selectedHour, int selectedMinute) { 
         editBedtime.setText("" + selectedHour + ":" + selectedMinute); 
        } 
       }, hour, minute, true); 
       mTimePicker.setTitle("Select Time"); 
       mTimePicker.show(); 

      } 
     }); 

ответ

2

Создать новый метод CheckDigit (INT) в вашей деятельности, которые возвращают вам выбранное время с нулями предшествующих.

public String checkDigit(int number) { 
     return number <= 9 ? "0" + number : String.valueOf(number); 
    } 

и вызов этого метода из обработчика TimePicker Dialog onClick.

editBedtime.setText("" + checkDigit(selectedHour) + ":" + checkDigit(selectedMinute));