Fixing a certain year in datepicker in android - android

I want to fix a certain range of year in datepicker. I only want that range of the year.
I only have the DatePickerDialog object and a OnDateSetListener object, how do I incorporate a datepicker into this arrangement?

Try getting the DatePicker from the dialog using DatePickerDialog.getDatePicker() and then using DatePicker.setMaxDate() and DatePicker.setMinDate()

Related

How to get only month and year picker in Android calendar?

I'm using DatePickerDialog with AlertDIalog.THEME_HOLO_LIGHT (in this case I'm getting the desired views) . The problem is , it only works with Android O and above .For < Android O I'm forced to use DatePickerDialog without the AlertDIalog.THEME_HOLO_LIGHT , here I am unable to get a calendar with only month and year.
use this library
Date Picker
then build your date picker like this
new SingleDateAndTimePickerDialog.Builder(this)
.bottomSheet()
.curved()
.displayMinutes(false)
.displayHours(false)
.displayDays(false)
.displayMonth(true)
.displayYears(true)
.displayDaysOfMonth(false)
.display();

Date is shown twice if setMaxDate is used on DatePickerDialog

When setting the maximum date on a date picker dialog like this:
DatePickerDialog dialog = new DatePickerDialog(this, listener, year, month, day);
dialog.getDatePicker().setMaxDate(new Date().getTime());
The date is shown normally, but also a second time at the top of the dialog. I've seen that many people have encountered this bug but I didn't find a solution.
You can also see it on this image from another user
Is there any way to prevent or solve this, besides using reflection?
I solved the bug by calling dialog.setTitle(null) every time a maximum date is set.
I posted this issue here: https://issuetracker.google.com/72284741

Not to show the date before Present date Android DatePickerDialog

Is there a way to not to show the dates/months before present date instead of disabling the dates in Android.
Totally agree with above answer :-
Calendar c = Calendar.getInstance();
c.set(2000,01,01);
datePicker.setMinDate(c.getTime().getTime());
Using above lines datepickerdialog is not showing prevous date anymore with your datepicker dialog.

DatePickerDialog display year picker first

I want my DatePickerDialog as soon as it opens to display the list of years.
For example, when I show the dialog I see the calendar view:
:
If I tap on the text "1900" the year view is shown:
I tried this code but it had no effect and I'm clueless for what I could do:
DatePickerDialog birthDatePicker = new DatePickerDialog(getActivity(), this, 0, 0, 0);
birthDatePicker.getDatePicker().setSpinnersShown(true);
birthDatePicker.show();
Same as Show year selection first in Android Calendar View
I will copy here my answer:
You can get a reference to year view and then just simulate user click to open it.
dataPicker.getTouchables().get( 0 ).performClick();
Using the Datepicker XML modifications you can elect to show spinners instead of the Calendar, which might be beneficial for you as you want to directly edit the years.
android:datePickerMode="spinner"

Android DatePickerDialog to a year of history

I'm coding an android app about the egyptian history, and I want to add a DatePicker in a dialog, where I will show years, and whenever the user sets a year, it shows in the layout the events in that year . If he changes the year, the event changes ...etc
It is a historical app, and I don't know how to do it!
I need help.
According to the doc (http://developer.android.com/reference/android/widget/DatePicker.html)
You can set min and max date according to the era you want to cover:
android:maxDate The minimal date shown by this calendar view in mm/dd/yyyy format.
android:minDate The minimal date shown by this calendar view in mm/dd/yyyy format.
And then use the onDateChangedListener to display the correct Layout.
http://developer.android.com/reference/android/widget/DatePicker.OnDateChangedListener.html
As you want to use only a year, I would advise to use a NumberPickerDialog instead.
DatePicker is maybe "too much" for your use case.

Categories

Resources