How to create TimePickerDialog android

15,479

Solution 1

I have made one method for old TimePickerDialog...i have same situation like you..this is working great for me..

Use below method

    public void showHourPicker() {
            final Calendar myCalender = Calendar.getInstance();
            int hour = myCalender.get(Calendar.HOUR_OF_DAY);
            int minute = myCalender.get(Calendar.MINUTE);


            TimePickerDialog.OnTimeSetListener myTimeListener = new TimePickerDialog.OnTimeSetListener() {
                @Override
                public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                    if (view.isShown()) {
                        myCalender.set(Calendar.HOUR_OF_DAY, hourOfDay);
                        myCalender.set(Calendar.MINUTE, minute);

                    }
                }
            };
            TimePickerDialog timePickerDialog = new TimePickerDialog(getActivity(), android.R.style.Theme_Holo_Light_Dialog_NoActionBar, myTimeListener, hour, minute, true);
            timePickerDialog.setTitle("Choose hour:");
  timePickerDialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);
            timePickerDialog.show();
        }

Hope this will help you...let me know if you need any help

Solution 2

Try the below code. It looks almost similar to what image you have provided. Either use this

<TimePicker
    android:id="@+id/simpleTimePicker"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:timePickerMode="spinner"/>

enter image description here

or this.

 final Calendar calenderInstance = Calendar.getInstance();
    int hr = calenderInstance.get(Calendar.HOUR_OF_DAY);
    int min = calenderInstance.get(Calendar.MINUTE);
    TimePickerDialog.OnTimeSetListener onTimeListner = new TimePickerDialog.OnTimeSetListener() {
        @Override
        public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
            if (view.isShown()) {
                calenderInstance.set(Calendar.HOUR_OF_DAY, hourOfDay);
                calenderInstance.set(Calendar.MINUTE, minute);
            }
        }
    };
    TimePickerDialog timePickerDialog = new TimePickerDialog(MainActivity.this,
            android.R.style.Theme_Holo_Light_Dialog_NoActionBar,
            onTimeListner, hr, min, true);
    timePickerDialog.setTitle("Set Time");
    Objects.requireNonNull(timePickerDialog.getWindow()).setBackgroundDrawableResource(android.R.color.transparent);
    timePickerDialog.show();
Share:
15,479
ARR.s
Author by

ARR.s

Updated on June 05, 2022

Comments