How to set time from time picker dialog?

user5669913

I want to set two times i.e alert time and due Time. I have created two dialogs for alert time and due time. I tried to set both the times in different date objects. Still when I change alert time the due time also gets changed. I want to save both values differently.

    private int ALERT_TIME_DIALOG, ALERT_DATE_DIALOG,DUE_TIME_DIALOG,DUE_DATE_DIALOG;
      @Override
        public void onTimeSet(RadialPickerLayout view, int hourOfDay, int minute, int second) {
            String hourString = hourOfDay < 10 ? "0"+hourOfDay : ""+hourOfDay;
            String minuteString = minute < 10 ? "0"+minute : ""+minute;
            String secondString = second < 10 ? "0"+second : ""+second;
            String aTime,dTime;
            SimpleDateFormat  df = new SimpleDateFormat("hh:mm a");

            if(ALERT_TIME_DIALOG == 2) {
                Date alertDate = new Date();
                mCalendar = Calendar.getInstance();
                mCalendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
                mCalendar.set(Calendar.MINUTE, minute);
                mCalendar.set(Calendar.SECOND,0);
                alertDate = mCalendar.getTime();
                aTime = df.format(alertDate);
                alertTime.setText(aTime);
            }

            if(DUE_TIME_DIALOG  == 4){
                Date dueDate = new Date();
                mCalendar = Calendar.getInstance();
                mCalendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
                mCalendar.set(Calendar.MINUTE, minute);
                mCalendar.set(Calendar.SECOND,0);
                dueDate = mCalendar.getTime();
                dTime = df.format(dueDate);
                dueTime.setText(dTime);
            }
        }


     alertTime.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {

                    ALERT_TIME_DIALOG = 2;

                    Calendar now = Calendar.getInstance();

                    TimePickerDialog tpd = TimePickerDialog.newInstance(
                            AddTaskActivity.this,
                            now.get(Calendar.HOUR_OF_DAY),
                            now.get(Calendar.MINUTE),
                            mHoursMode
                    );

                    tpd.setOnCancelListener(new DialogInterface.OnCancelListener() {
                        @Override
                        public void onCancel(DialogInterface dialogInterface) {
                            Log.d("TimePicker", "Dialog was cancelled");
                        }
                    });
                    tpd.show(getFragmentManager(), "Timepickerdialog");
                }
            });


     dueTime.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {

                    DUE_TIME_DIALOG = 4;

                    Calendar now = Calendar.getInstance();

                    TimePickerDialog tpd = TimePickerDialog.newInstance(
                            AddTaskActivity.this,
                            now.get(Calendar.HOUR_OF_DAY),
                            now.get(Calendar.MINUTE),
                            mHoursMode
                    );

                    tpd.setOnCancelListener(new DialogInterface.OnCancelListener() {
                        @Override
                        public void onCancel(DialogInterface dialogInterface) {
                            Log.d("TimePicker", "Dialog was cancelled");
                        }
                    });
                    tpd.show(getFragmentManager(), "Timepickerdialog");
                }
            });

What's wrong here.? Thank u..

Dhaval Patel

Modify Your code as Below: You have Set two different tag for both Alert and Due date dialog. SO when you repeat the process both the value is set and in onTimeSet method both if statement get executed.

private int TIME_PICKER_DIALOG_TAG;
@Override
public void onTimeSet(RadialPickerLayout view, int hourOfDay, int minute, int second) {
    String hourString = hourOfDay < 10 ? "0"+hourOfDay : ""+hourOfDay;
    String minuteString = minute < 10 ? "0"+minute : ""+minute;
    String secondString = second < 10 ? "0"+second : ""+second;

    SimpleDateFormat  df = new SimpleDateFormat("hh:mm a");
    mCalendar = Calendar.getInstance();
    mCalendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
    mCalendar.set(Calendar.MINUTE, minute);
    mCalendar.set(Calendar.SECOND,0);

    Date date = mCalendar.getTime();
    if(TIME_PICKER_DIALOG_TAG == 2) {
        alertTime.setText(df.format(date));
    }else if(TIME_PICKER_DIALOG_TAG  == 4){
        dueTime.setText(df.format(date));
    }
}


alertTime.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

        TIME_PICKER_DIALOG_TAG = 2;

        Calendar now = Calendar.getInstance();

        TimePickerDialog tpd = TimePickerDialog.newInstance(
            AddTaskActivity.this,
            now.get(Calendar.HOUR_OF_DAY),
            now.get(Calendar.MINUTE),
            mHoursMode
        );

        tpd.setOnCancelListener(new DialogInterface.OnCancelListener() {
        @Override
        public void onCancel(DialogInterface dialogInterface) {
            Log.d("TimePicker", "Dialog was cancelled");
        }
        });
        tpd.show(getFragmentManager(), "Timepickerdialog");
    }
});


dueTime.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

        TIME_PICKER_DIALOG_TAG = 4;

        Calendar now = Calendar.getInstance();

        TimePickerDialog tpd = TimePickerDialog.newInstance(
            AddTaskActivity.this,
            now.get(Calendar.HOUR_OF_DAY),
            now.get(Calendar.MINUTE),
            mHoursMode
        );

        tpd.setOnCancelListener(new DialogInterface.OnCancelListener() {
        @Override
        public void onCancel(DialogInterface dialogInterface) {
            Log.d("TimePicker", "Dialog was cancelled");
        }
        });
        tpd.show(getFragmentManager(), "Timepickerdialog");
    }
});

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

How to get date and time from Date/Time Picker dialog and show it?

From Dev

Dialog on time picker

From Dev

time picker dialog not working

From Dev

How to make time picker dialog for timer

From Dev

How to set a custom title on time picker?

From Dev

Set date time picker from a string (date and time)

From Dev

how can i put date and time picker in a dialog in android

From Dev

how can i put date and time picker in a dialog in android

From Dev

How to set max time and min time in c# datetime picker

From Dev

How to set max time and min time in c# datetime picker

From Dev

How to remove the time from Date Picker?

From Dev

Set time for Custom Dialog

From Dev

How to set time picker only set time from 8:30 am to 8:30 pm in bootstrap-datetimepicker.js?

From Dev

time-picker in bootstrap modal dialog

From Dev

Setting a countdown timer with time picker dialog android

From Dev

time-picker in bootstrap modal dialog

From Dev

Set Date Picker time format

From Dev

Set Date Time to Jquery date time picker

From Dev

Set Date Time to Jquery date time picker

From Dev

How to set date/time from time server

From Dev

How to deduct the current time from a set time

From Dev

How to set a specific default time for a date picker in Swift

From Dev

Disable time picker from mysql

From Dev

Showing Time in Date Picker Set The Maximum time And Minimum time

From Dev

How to Select time in Date Time picker

From Dev

How do I set default time to a specified hour with TimePicker dialog?

From Dev

How do I set default time to a specified hour with TimePicker dialog?

From Dev

How to get Date and Time Picker values from textbox?

From Dev

How to embed time picker in view

Related Related

HotTag

Archive