2015-06-18 3 views
0

Я начинаю выбор времени на текстовом клике. Текстовое представление устанавливается со значением 12: 0: 0. Но когда открывается сборщик времени, он показывает текущее время. Я хочу, чтобы он показывал 12: 0: 0, а затем позволял пользователю изменять его. Как мне это достичь? Вот мой код:Android Timepicker с выбранным временем

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) { 
        timePicker.setIs24HourView(true); 

        if(db.getAlarm1().contains(selectedHour + " : " + selectedMinute+" : 0")){ 
         alarm1.setText(selectedHour + " : " +(selectedMinute+1)+" : 0"); 
        } 
        else{ 
         alarm1.setText(selectedHour + " : " + selectedMinute+" : 0"); 
        } 
         mcurrentTime.set(Calendar.HOUR_OF_DAY,selectedHour); 
         mcurrentTime.set(Calendar.MINUTE,selectedMinute); 
         mcurrentTime.set(Calendar.SECOND,0); 
        l= mcurrentTime.getTimeInMillis(); 
        // alarm1.setText(String.valueOf(l)+" ../.. "+String.valueOf(Calendar.getInstance().getTimeInMillis())); 

        } 
       }, hour, minute, true);//Yes 24 hour tim 
       mTimePicker.setTitle("Select Time"); 
       mTimePicker.show(); 
+0

Вам нужно установить время вручную в «mcurrentTime», который 12:00:00, после первой линии – Harry

ответ

0

В вашем TimePickerDialog конструктору вместо часа, минуты скоротать время, которое вы хотите установить, когда это показано.

0

Вы впрыскиваете те же переменные hour и minute во фрагмент, который вы получаете из своего экземпляра Calendar. Поэтому вместо того, чтобы попробовать установить их вручную:

int hour = 12; 
int minute = 0; 
0

Попробуйте этот код, он работает для меня:

Calendar cal=Calendar.getInstance(); 

int year=cal.get(Calendar.YEAR); 
int month=cal.get(Calendar.MONTH); 
int day=cal.get(Calendar.DAY_OF_MONTH); 
int hour=cal.get(Calendar.HOUR_OF_DAY); 
int min=cal.get(Calendar.MINUTE); 

datePicker.updateDate(year, month, day); 

timePicker.setCurrentHour(hour); 
timePicker.setCurrentMinute(min);