How to show only current month and previews month's dates selectable in datePickerDialog? The 2019 Stack Overflow Developer Survey Results Are In Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) The Ask Question Wizard is Live! Data science time! April 2019 and salary with experienceAndroid - Hide date field in datepickerdialogIllegalArgumentException when validating a date on DatePickerDialog (Android)How to return the date value from DatePickerDialog in Android?Wheel datepickerdialog always shows current datedate picker show only year to select in androidOnly select date in datePickerGet Date object from DatePickerFragment in AndroidDatePickerDialog to setMaxDate and to maintain previously selected dateI am having one EditText for which i have set onClickListener and opening material CalendarHow to use switch case in onDateSet

What is special about square numbers here?

How many people can fit inside Mordenkainen's Magnificent Mansion?

How to delete random line from file using Unix command?

How can I protect witches in combat who wear limited clothing?

First use of “packing” as in carrying a gun

Why did all the guest students take carriages to the Yule Ball?

Make it rain characters

How is simplicity better than precision and clarity in prose?

What aspect of planet Earth must be changed to prevent the industrial revolution?

How did passengers keep warm on sail ships?

Does Parliament hold absolute power in the UK?

Relations between two reciprocal partial derivatives?

Did the new image of black hole confirm the general theory of relativity?

how can a perfect fourth interval be considered either consonant or dissonant?

system() function string length limit

Arduino Pro Micro - switch off LEDs

How does this infinite series simplify to an integral?

How did the audience guess the pentatonic scale in Bobby McFerrin's presentation?

Mortgage adviser recommends a longer term than necessary combined with overpayments

Working through the single responsibility principle (SRP) in Python when calls are expensive

What are these Gizmos at Izaña Atmospheric Research Center in Spain?

Are spiders unable to hurt humans, especially very small spiders?

A pet rabbit called Belle

How does ice melt when immersed in water



How to show only current month and previews month's dates selectable in datePickerDialog?



The 2019 Stack Overflow Developer Survey Results Are In
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
The Ask Question Wizard is Live!
Data science time! April 2019 and salary with experienceAndroid - Hide date field in datepickerdialogIllegalArgumentException when validating a date on DatePickerDialog (Android)How to return the date value from DatePickerDialog in Android?Wheel datepickerdialog always shows current datedate picker show only year to select in androidOnly select date in datePickerGet Date object from DatePickerFragment in AndroidDatePickerDialog to setMaxDate and to maintain previously selected dateI am having one EditText for which i have set onClickListener and opening material CalendarHow to use switch case in onDateSet



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








2















Show Only Current and previous month in date picker dialog.



 datePickerDialog = new DatePickerDialog(DateConvertActivity.this, new DatePickerDialog.OnDateSetListener() 
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth)
String s = "" + dayOfMonth + "-" + (month + 1) + "-" + year;
edtDate.setText(s);

, mDay, mMonth, mYear);
datePickerDialog.getDatePicker().updateDate(mYear, mMonth, mDay);









share|improve this question






























    2















    Show Only Current and previous month in date picker dialog.



     datePickerDialog = new DatePickerDialog(DateConvertActivity.this, new DatePickerDialog.OnDateSetListener() 
    @Override
    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth)
    String s = "" + dayOfMonth + "-" + (month + 1) + "-" + year;
    edtDate.setText(s);

    , mDay, mMonth, mYear);
    datePickerDialog.getDatePicker().updateDate(mYear, mMonth, mDay);









    share|improve this question


























      2












      2








      2


      1






      Show Only Current and previous month in date picker dialog.



       datePickerDialog = new DatePickerDialog(DateConvertActivity.this, new DatePickerDialog.OnDateSetListener() 
      @Override
      public void onDateSet(DatePicker view, int year, int month, int dayOfMonth)
      String s = "" + dayOfMonth + "-" + (month + 1) + "-" + year;
      edtDate.setText(s);

      , mDay, mMonth, mYear);
      datePickerDialog.getDatePicker().updateDate(mYear, mMonth, mDay);









      share|improve this question
















      Show Only Current and previous month in date picker dialog.



       datePickerDialog = new DatePickerDialog(DateConvertActivity.this, new DatePickerDialog.OnDateSetListener() 
      @Override
      public void onDateSet(DatePicker view, int year, int month, int dayOfMonth)
      String s = "" + dayOfMonth + "-" + (month + 1) + "-" + year;
      edtDate.setText(s);

      , mDay, mMonth, mYear);
      datePickerDialog.getDatePicker().updateDate(mYear, mMonth, mDay);






      android datetimepicker datetimeformatinfo






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 13 at 16:24







      Hiten Bhayani

















      asked Mar 8 at 13:30









      Hiten BhayaniHiten Bhayani

      198




      198






















          3 Answers
          3






          active

          oldest

          votes


















          1














          Try this solution. It's from first day of previous month to this day.



          In Kotlin:



          private fun setupUi() 
          // Get calendar instance
          val calendar = Calendar.getInstance()

          // Get current time
          val currentYear = calendar.get(Calendar.YEAR)
          val currentMonth = calendar.get(Calendar.MONTH)
          val currentDay = calendar.get(Calendar.DAY_OF_MONTH)

          // Create listener
          val listener = DatePickerDialog.OnDateSetListener view, year, month, day ->
          // Show Toast after selection
          Toast.makeText(this, "Selected: $day.$month.$year", Toast.LENGTH_SHORT).show()


          // Max = current
          val maxTime = calendar.timeInMillis

          // Move day as first day of the month
          calendar.set(Calendar.DAY_OF_MONTH, 1)
          // Move "month" for previous one
          calendar.add(Calendar.MONTH, -1)

          // Min = time after changes
          val minTime = calendar.timeInMillis

          // Create dialog
          val datePickerDialog = DatePickerDialog(
          this,
          listener,
          currentYear,
          currentMonth,
          currentDay
          ).apply
          // Set dates
          datePicker.maxDate = maxTime
          datePicker.minDate = minTime


          // Show dialog
          datePickerDialog.show()



          And in Java:



          private void setupUi() 
          // Get calendar instance
          Calendar calendar = Calendar.getInstance();

          // Get current time
          int currentYear = calendar.get(Calendar.YEAR);
          int currentMonth = calendar.get(Calendar.MONTH);
          int currentDay = calendar.get(Calendar.DAY_OF_MONTH);

          // Create listener
          DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener()
          @Override
          public void onDateSet(DatePicker view, int year, int month, int day)
          // Show Toast after selection
          Toast.makeText(MainActivity.this, String.format("Selected: %s.%s.%s", day, month, year), Toast.LENGTH_SHORT).show();

          ;

          // Max = current
          long maxTime = calendar.getTimeInMillis();

          // Move day as first day of the month
          calendar.set(Calendar.DAY_OF_MONTH, 1);
          // Move "month" for previous one
          calendar.add(Calendar.MONTH, -1);

          // Min = time after changes
          long minTime = calendar.getTimeInMillis();

          // Create dialog
          DatePickerDialog datePickerDialog = new DatePickerDialog(
          this,
          listener,
          currentYear,
          currentMonth,
          currentDay
          );

          // Set dates
          datePickerDialog.getDatePicker().setMaxDate(maxTime);
          datePickerDialog.getDatePicker().setMinDate(minTime);

          // Show dialog
          datePickerDialog.show();



          If you need WHOLE current month (from first to last day) you can replace par with this Kotlin code:



          // Move day as first day of the month
          calendar.set(Calendar.DAY_OF_MONTH, 1)
          // Move "month" for previous one
          calendar.add(Calendar.MONTH, -1)

          // Min = time after changes
          val minTime = calendar.timeInMillis


          // Move day as first day of the month
          calendar.set(Calendar.DAY_OF_MONTH, 1)
          // Move to next month
          calendar.add(Calendar.MONTH, +2)
          // Go back one day (so last day of current month)
          calendar.add(Calendar.DAY_OF_MONTH, -1)

          // Max = current
          val maxTime = calendar.timeInMillis


          and in Java:



          // Move day as first day of the month
          calendar.set(Calendar.DAY_OF_MONTH, 1);
          // Move "month" for previous one
          calendar.add(Calendar.MONTH, -1);

          // Min = time after changes
          long minTime = calendar.getTimeInMillis();

          // Move day as first day of the month
          calendar.set(Calendar.DAY_OF_MONTH, 1);
          // Move to next month
          calendar.add(Calendar.MONTH, +2);
          // Go back one day (so last day of current month)
          calendar.add(Calendar.DAY_OF_MONTH, -1);

          // Max = current
          long maxTime = calendar.getTimeInMillis();





          share|improve this answer
































            3














            Pick the date in Timestamp see below code



            Long tsLong = System.currentTimeMillis()


            Then convert tsLong to any specific format and extract the one you need.



            For Reference: Android TimeStamp






            share|improve this answer

























            • @MashukKhan This isn't working.

              – Hiten Bhayani
              Mar 11 at 5:05


















            0














            datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);





            share|improve this answer























            • This isn't working. It only shows the current date and next to any.

              – Hiten Bhayani
              Mar 8 at 13:52











            Your Answer






            StackExchange.ifUsing("editor", function ()
            StackExchange.using("externalEditor", function ()
            StackExchange.using("snippets", function ()
            StackExchange.snippets.init();
            );
            );
            , "code-snippets");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "1"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55064252%2fhow-to-show-only-current-month-and-previews-months-dates-selectable-in-datepick%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            3 Answers
            3






            active

            oldest

            votes








            3 Answers
            3






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            1














            Try this solution. It's from first day of previous month to this day.



            In Kotlin:



            private fun setupUi() 
            // Get calendar instance
            val calendar = Calendar.getInstance()

            // Get current time
            val currentYear = calendar.get(Calendar.YEAR)
            val currentMonth = calendar.get(Calendar.MONTH)
            val currentDay = calendar.get(Calendar.DAY_OF_MONTH)

            // Create listener
            val listener = DatePickerDialog.OnDateSetListener view, year, month, day ->
            // Show Toast after selection
            Toast.makeText(this, "Selected: $day.$month.$year", Toast.LENGTH_SHORT).show()


            // Max = current
            val maxTime = calendar.timeInMillis

            // Move day as first day of the month
            calendar.set(Calendar.DAY_OF_MONTH, 1)
            // Move "month" for previous one
            calendar.add(Calendar.MONTH, -1)

            // Min = time after changes
            val minTime = calendar.timeInMillis

            // Create dialog
            val datePickerDialog = DatePickerDialog(
            this,
            listener,
            currentYear,
            currentMonth,
            currentDay
            ).apply
            // Set dates
            datePicker.maxDate = maxTime
            datePicker.minDate = minTime


            // Show dialog
            datePickerDialog.show()



            And in Java:



            private void setupUi() 
            // Get calendar instance
            Calendar calendar = Calendar.getInstance();

            // Get current time
            int currentYear = calendar.get(Calendar.YEAR);
            int currentMonth = calendar.get(Calendar.MONTH);
            int currentDay = calendar.get(Calendar.DAY_OF_MONTH);

            // Create listener
            DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener()
            @Override
            public void onDateSet(DatePicker view, int year, int month, int day)
            // Show Toast after selection
            Toast.makeText(MainActivity.this, String.format("Selected: %s.%s.%s", day, month, year), Toast.LENGTH_SHORT).show();

            ;

            // Max = current
            long maxTime = calendar.getTimeInMillis();

            // Move day as first day of the month
            calendar.set(Calendar.DAY_OF_MONTH, 1);
            // Move "month" for previous one
            calendar.add(Calendar.MONTH, -1);

            // Min = time after changes
            long minTime = calendar.getTimeInMillis();

            // Create dialog
            DatePickerDialog datePickerDialog = new DatePickerDialog(
            this,
            listener,
            currentYear,
            currentMonth,
            currentDay
            );

            // Set dates
            datePickerDialog.getDatePicker().setMaxDate(maxTime);
            datePickerDialog.getDatePicker().setMinDate(minTime);

            // Show dialog
            datePickerDialog.show();



            If you need WHOLE current month (from first to last day) you can replace par with this Kotlin code:



            // Move day as first day of the month
            calendar.set(Calendar.DAY_OF_MONTH, 1)
            // Move "month" for previous one
            calendar.add(Calendar.MONTH, -1)

            // Min = time after changes
            val minTime = calendar.timeInMillis


            // Move day as first day of the month
            calendar.set(Calendar.DAY_OF_MONTH, 1)
            // Move to next month
            calendar.add(Calendar.MONTH, +2)
            // Go back one day (so last day of current month)
            calendar.add(Calendar.DAY_OF_MONTH, -1)

            // Max = current
            val maxTime = calendar.timeInMillis


            and in Java:



            // Move day as first day of the month
            calendar.set(Calendar.DAY_OF_MONTH, 1);
            // Move "month" for previous one
            calendar.add(Calendar.MONTH, -1);

            // Min = time after changes
            long minTime = calendar.getTimeInMillis();

            // Move day as first day of the month
            calendar.set(Calendar.DAY_OF_MONTH, 1);
            // Move to next month
            calendar.add(Calendar.MONTH, +2);
            // Go back one day (so last day of current month)
            calendar.add(Calendar.DAY_OF_MONTH, -1);

            // Max = current
            long maxTime = calendar.getTimeInMillis();





            share|improve this answer





























              1














              Try this solution. It's from first day of previous month to this day.



              In Kotlin:



              private fun setupUi() 
              // Get calendar instance
              val calendar = Calendar.getInstance()

              // Get current time
              val currentYear = calendar.get(Calendar.YEAR)
              val currentMonth = calendar.get(Calendar.MONTH)
              val currentDay = calendar.get(Calendar.DAY_OF_MONTH)

              // Create listener
              val listener = DatePickerDialog.OnDateSetListener view, year, month, day ->
              // Show Toast after selection
              Toast.makeText(this, "Selected: $day.$month.$year", Toast.LENGTH_SHORT).show()


              // Max = current
              val maxTime = calendar.timeInMillis

              // Move day as first day of the month
              calendar.set(Calendar.DAY_OF_MONTH, 1)
              // Move "month" for previous one
              calendar.add(Calendar.MONTH, -1)

              // Min = time after changes
              val minTime = calendar.timeInMillis

              // Create dialog
              val datePickerDialog = DatePickerDialog(
              this,
              listener,
              currentYear,
              currentMonth,
              currentDay
              ).apply
              // Set dates
              datePicker.maxDate = maxTime
              datePicker.minDate = minTime


              // Show dialog
              datePickerDialog.show()



              And in Java:



              private void setupUi() 
              // Get calendar instance
              Calendar calendar = Calendar.getInstance();

              // Get current time
              int currentYear = calendar.get(Calendar.YEAR);
              int currentMonth = calendar.get(Calendar.MONTH);
              int currentDay = calendar.get(Calendar.DAY_OF_MONTH);

              // Create listener
              DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener()
              @Override
              public void onDateSet(DatePicker view, int year, int month, int day)
              // Show Toast after selection
              Toast.makeText(MainActivity.this, String.format("Selected: %s.%s.%s", day, month, year), Toast.LENGTH_SHORT).show();

              ;

              // Max = current
              long maxTime = calendar.getTimeInMillis();

              // Move day as first day of the month
              calendar.set(Calendar.DAY_OF_MONTH, 1);
              // Move "month" for previous one
              calendar.add(Calendar.MONTH, -1);

              // Min = time after changes
              long minTime = calendar.getTimeInMillis();

              // Create dialog
              DatePickerDialog datePickerDialog = new DatePickerDialog(
              this,
              listener,
              currentYear,
              currentMonth,
              currentDay
              );

              // Set dates
              datePickerDialog.getDatePicker().setMaxDate(maxTime);
              datePickerDialog.getDatePicker().setMinDate(minTime);

              // Show dialog
              datePickerDialog.show();



              If you need WHOLE current month (from first to last day) you can replace par with this Kotlin code:



              // Move day as first day of the month
              calendar.set(Calendar.DAY_OF_MONTH, 1)
              // Move "month" for previous one
              calendar.add(Calendar.MONTH, -1)

              // Min = time after changes
              val minTime = calendar.timeInMillis


              // Move day as first day of the month
              calendar.set(Calendar.DAY_OF_MONTH, 1)
              // Move to next month
              calendar.add(Calendar.MONTH, +2)
              // Go back one day (so last day of current month)
              calendar.add(Calendar.DAY_OF_MONTH, -1)

              // Max = current
              val maxTime = calendar.timeInMillis


              and in Java:



              // Move day as first day of the month
              calendar.set(Calendar.DAY_OF_MONTH, 1);
              // Move "month" for previous one
              calendar.add(Calendar.MONTH, -1);

              // Min = time after changes
              long minTime = calendar.getTimeInMillis();

              // Move day as first day of the month
              calendar.set(Calendar.DAY_OF_MONTH, 1);
              // Move to next month
              calendar.add(Calendar.MONTH, +2);
              // Go back one day (so last day of current month)
              calendar.add(Calendar.DAY_OF_MONTH, -1);

              // Max = current
              long maxTime = calendar.getTimeInMillis();





              share|improve this answer



























                1












                1








                1







                Try this solution. It's from first day of previous month to this day.



                In Kotlin:



                private fun setupUi() 
                // Get calendar instance
                val calendar = Calendar.getInstance()

                // Get current time
                val currentYear = calendar.get(Calendar.YEAR)
                val currentMonth = calendar.get(Calendar.MONTH)
                val currentDay = calendar.get(Calendar.DAY_OF_MONTH)

                // Create listener
                val listener = DatePickerDialog.OnDateSetListener view, year, month, day ->
                // Show Toast after selection
                Toast.makeText(this, "Selected: $day.$month.$year", Toast.LENGTH_SHORT).show()


                // Max = current
                val maxTime = calendar.timeInMillis

                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1)
                // Move "month" for previous one
                calendar.add(Calendar.MONTH, -1)

                // Min = time after changes
                val minTime = calendar.timeInMillis

                // Create dialog
                val datePickerDialog = DatePickerDialog(
                this,
                listener,
                currentYear,
                currentMonth,
                currentDay
                ).apply
                // Set dates
                datePicker.maxDate = maxTime
                datePicker.minDate = minTime


                // Show dialog
                datePickerDialog.show()



                And in Java:



                private void setupUi() 
                // Get calendar instance
                Calendar calendar = Calendar.getInstance();

                // Get current time
                int currentYear = calendar.get(Calendar.YEAR);
                int currentMonth = calendar.get(Calendar.MONTH);
                int currentDay = calendar.get(Calendar.DAY_OF_MONTH);

                // Create listener
                DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener()
                @Override
                public void onDateSet(DatePicker view, int year, int month, int day)
                // Show Toast after selection
                Toast.makeText(MainActivity.this, String.format("Selected: %s.%s.%s", day, month, year), Toast.LENGTH_SHORT).show();

                ;

                // Max = current
                long maxTime = calendar.getTimeInMillis();

                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1);
                // Move "month" for previous one
                calendar.add(Calendar.MONTH, -1);

                // Min = time after changes
                long minTime = calendar.getTimeInMillis();

                // Create dialog
                DatePickerDialog datePickerDialog = new DatePickerDialog(
                this,
                listener,
                currentYear,
                currentMonth,
                currentDay
                );

                // Set dates
                datePickerDialog.getDatePicker().setMaxDate(maxTime);
                datePickerDialog.getDatePicker().setMinDate(minTime);

                // Show dialog
                datePickerDialog.show();



                If you need WHOLE current month (from first to last day) you can replace par with this Kotlin code:



                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1)
                // Move "month" for previous one
                calendar.add(Calendar.MONTH, -1)

                // Min = time after changes
                val minTime = calendar.timeInMillis


                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1)
                // Move to next month
                calendar.add(Calendar.MONTH, +2)
                // Go back one day (so last day of current month)
                calendar.add(Calendar.DAY_OF_MONTH, -1)

                // Max = current
                val maxTime = calendar.timeInMillis


                and in Java:



                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1);
                // Move "month" for previous one
                calendar.add(Calendar.MONTH, -1);

                // Min = time after changes
                long minTime = calendar.getTimeInMillis();

                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1);
                // Move to next month
                calendar.add(Calendar.MONTH, +2);
                // Go back one day (so last day of current month)
                calendar.add(Calendar.DAY_OF_MONTH, -1);

                // Max = current
                long maxTime = calendar.getTimeInMillis();





                share|improve this answer















                Try this solution. It's from first day of previous month to this day.



                In Kotlin:



                private fun setupUi() 
                // Get calendar instance
                val calendar = Calendar.getInstance()

                // Get current time
                val currentYear = calendar.get(Calendar.YEAR)
                val currentMonth = calendar.get(Calendar.MONTH)
                val currentDay = calendar.get(Calendar.DAY_OF_MONTH)

                // Create listener
                val listener = DatePickerDialog.OnDateSetListener view, year, month, day ->
                // Show Toast after selection
                Toast.makeText(this, "Selected: $day.$month.$year", Toast.LENGTH_SHORT).show()


                // Max = current
                val maxTime = calendar.timeInMillis

                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1)
                // Move "month" for previous one
                calendar.add(Calendar.MONTH, -1)

                // Min = time after changes
                val minTime = calendar.timeInMillis

                // Create dialog
                val datePickerDialog = DatePickerDialog(
                this,
                listener,
                currentYear,
                currentMonth,
                currentDay
                ).apply
                // Set dates
                datePicker.maxDate = maxTime
                datePicker.minDate = minTime


                // Show dialog
                datePickerDialog.show()



                And in Java:



                private void setupUi() 
                // Get calendar instance
                Calendar calendar = Calendar.getInstance();

                // Get current time
                int currentYear = calendar.get(Calendar.YEAR);
                int currentMonth = calendar.get(Calendar.MONTH);
                int currentDay = calendar.get(Calendar.DAY_OF_MONTH);

                // Create listener
                DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener()
                @Override
                public void onDateSet(DatePicker view, int year, int month, int day)
                // Show Toast after selection
                Toast.makeText(MainActivity.this, String.format("Selected: %s.%s.%s", day, month, year), Toast.LENGTH_SHORT).show();

                ;

                // Max = current
                long maxTime = calendar.getTimeInMillis();

                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1);
                // Move "month" for previous one
                calendar.add(Calendar.MONTH, -1);

                // Min = time after changes
                long minTime = calendar.getTimeInMillis();

                // Create dialog
                DatePickerDialog datePickerDialog = new DatePickerDialog(
                this,
                listener,
                currentYear,
                currentMonth,
                currentDay
                );

                // Set dates
                datePickerDialog.getDatePicker().setMaxDate(maxTime);
                datePickerDialog.getDatePicker().setMinDate(minTime);

                // Show dialog
                datePickerDialog.show();



                If you need WHOLE current month (from first to last day) you can replace par with this Kotlin code:



                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1)
                // Move "month" for previous one
                calendar.add(Calendar.MONTH, -1)

                // Min = time after changes
                val minTime = calendar.timeInMillis


                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1)
                // Move to next month
                calendar.add(Calendar.MONTH, +2)
                // Go back one day (so last day of current month)
                calendar.add(Calendar.DAY_OF_MONTH, -1)

                // Max = current
                val maxTime = calendar.timeInMillis


                and in Java:



                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1);
                // Move "month" for previous one
                calendar.add(Calendar.MONTH, -1);

                // Min = time after changes
                long minTime = calendar.getTimeInMillis();

                // Move day as first day of the month
                calendar.set(Calendar.DAY_OF_MONTH, 1);
                // Move to next month
                calendar.add(Calendar.MONTH, +2);
                // Go back one day (so last day of current month)
                calendar.add(Calendar.DAY_OF_MONTH, -1);

                // Max = current
                long maxTime = calendar.getTimeInMillis();






                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Mar 8 at 14:40

























                answered Mar 8 at 14:26









                BokenBoken

                1,6551119




                1,6551119























                    3














                    Pick the date in Timestamp see below code



                    Long tsLong = System.currentTimeMillis()


                    Then convert tsLong to any specific format and extract the one you need.



                    For Reference: Android TimeStamp






                    share|improve this answer

























                    • @MashukKhan This isn't working.

                      – Hiten Bhayani
                      Mar 11 at 5:05















                    3














                    Pick the date in Timestamp see below code



                    Long tsLong = System.currentTimeMillis()


                    Then convert tsLong to any specific format and extract the one you need.



                    For Reference: Android TimeStamp






                    share|improve this answer

























                    • @MashukKhan This isn't working.

                      – Hiten Bhayani
                      Mar 11 at 5:05













                    3












                    3








                    3







                    Pick the date in Timestamp see below code



                    Long tsLong = System.currentTimeMillis()


                    Then convert tsLong to any specific format and extract the one you need.



                    For Reference: Android TimeStamp






                    share|improve this answer















                    Pick the date in Timestamp see below code



                    Long tsLong = System.currentTimeMillis()


                    Then convert tsLong to any specific format and extract the one you need.



                    For Reference: Android TimeStamp







                    share|improve this answer














                    share|improve this answer



                    share|improve this answer








                    edited Mar 8 at 14:40









                    MashukKhan

                    1,05111734




                    1,05111734










                    answered Mar 8 at 13:41









                    Zeeshan AyazZeeshan Ayaz

                    312




                    312












                    • @MashukKhan This isn't working.

                      – Hiten Bhayani
                      Mar 11 at 5:05

















                    • @MashukKhan This isn't working.

                      – Hiten Bhayani
                      Mar 11 at 5:05
















                    @MashukKhan This isn't working.

                    – Hiten Bhayani
                    Mar 11 at 5:05





                    @MashukKhan This isn't working.

                    – Hiten Bhayani
                    Mar 11 at 5:05











                    0














                    datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);





                    share|improve this answer























                    • This isn't working. It only shows the current date and next to any.

                      – Hiten Bhayani
                      Mar 8 at 13:52















                    0














                    datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);





                    share|improve this answer























                    • This isn't working. It only shows the current date and next to any.

                      – Hiten Bhayani
                      Mar 8 at 13:52













                    0












                    0








                    0







                    datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);





                    share|improve this answer













                    datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);






                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Mar 8 at 13:42









                    VarunVarun

                    844




                    844












                    • This isn't working. It only shows the current date and next to any.

                      – Hiten Bhayani
                      Mar 8 at 13:52

















                    • This isn't working. It only shows the current date and next to any.

                      – Hiten Bhayani
                      Mar 8 at 13:52
















                    This isn't working. It only shows the current date and next to any.

                    – Hiten Bhayani
                    Mar 8 at 13:52





                    This isn't working. It only shows the current date and next to any.

                    – Hiten Bhayani
                    Mar 8 at 13:52

















                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55064252%2fhow-to-show-only-current-month-and-previews-months-dates-selectable-in-datepick%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    1928 у кіно

                    Захаров Федір Захарович

                    Ель Греко