Amardeepvijay
Amardeepvijay

Reputation: 1628

how to simply store selected time From TimePicker in android that value i am geeting in edittext?

i want to retrieve the time from Time-picker in android and store in appropriate variable which variable will suit for it. how can i retrieve time which is selected by user in easy way.

I am getting value of time-picker on edit text, but how should i get it in a proper variable.

This is my javacode :-

                    et = (EditText) findViewById(R.id.amar);
            et.setOnClickListener(new 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(Timepicker.this,
                                    new TimePickerDialog.OnTimeSetListener() {
                                        @Override
                                        public void onTimeSet(TimePicker timePicker,
                                                int selectedHour, int selectedMinute) {
                                            et.setText(selectedHour + ":" + selectedMinute);
                                        }
                                    }, hour, minute, false);// Yes 24 hour time
                            mTimePicker.setTitle("Select Starting Time");
                            mTimePicker.show();
                        }
                    });

Upvotes: 0

Views: 2348

Answers (1)

Willie Nel
Willie Nel

Reputation: 363

Instead of using et.setText() you should get the current time again and just modify the hour and minute properties to the newly selected ones.

    Calendar initialTime = Calendar.getInstance();

    int hour = initialTime.get(Calendar.HOUR_OF_DAY);
    int minute = initialTime.get(Calendar.MINUTE);

    TimePickerDialog mTimePicker = new TimePickerDialog(Timepicker.this,
        new TimePickerDialog.OnTimeSetListener() {
            @Override
            public void onTimeSet(TimePicker timePicker,
                    int selectedHour, int selectedMinute) {

                Calendar currentTime = Calendar.getInstance();
                currentTime.set(Calendar.HOUR_OF_DAY, selectedHour);
                currentTime.set(Calendar.MINUTE, selectedMinute);

                Date selectedDate = currentTime.getTime();
            }
        }, hour, minute, false);// Yes 24 hour time

    mTimePicker.setTitle("Select Starting Time");
    mTimePicker.show();

Hope that helps

Upvotes: 1

Related Questions