There are two datepickerdialogs. The selected date in the first should be the minimum date in the second. Made it so
private void setInitialDateTime(TextView textView) { textView.setText(DateUtils.formatDateTime(getActivity(), dateAndTime.getTimeInMillis(), DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_SHOW_YEAR )); } // установка обработчика выбора даты DatePickerDialog.OnDateSetListener fD=new DatePickerDialog.OnDateSetListener() { public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { dateAndTime.set(Calendar.YEAR, year); dateAndTime.set(Calendar.MONTH, monthOfYear); dateAndTime.set(Calendar.DAY_OF_MONTH, dayOfMonth); setInitialDateTime(finishDate); } }; DatePickerDialog.OnDateSetListener bD=new DatePickerDialog.OnDateSetListener() { public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { dateAndTime.set(Calendar.YEAR, year); dateAndTime.set(Calendar.MONTH, monthOfYear); dateAndTime.set(Calendar.DAY_OF_MONTH, dayOfMonth); finishPicker.getDatePicker().setMinDate(dateAndTime.getTimeInMillis()); setInitialDateTime(beginDate); } }; // отображаем диалоговое окно для выбора даты public void setDate(DatePickerDialog.OnDateSetListener dialog) { beginPicker.getDatePicker().updateDate(dateAndTime.get(Calendar.YEAR), dateAndTime.get(Calendar.MONTH),dateAndTime.get(Calendar.DAY_OF_MONTH)); beginPicker.show(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { view =inflater.inflate(R.layout.fragment_period, container, false); beginDate= (TextView) view.findViewById(R.id.beginDate ); finishDate= (TextView) view.findViewById(R.id.finishDate); beginDate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { setDate(bD); } }); finishDate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { finishPicker.show(); } }); viewPager = (ViewPager) view.findViewById(R.id.viewpagerDetalization); setupViewPager(viewPager); tabLayout = (TabLayout) view.findViewById(R.id.tabsDetalization); tabLayout.setupWithViewPager(viewPager); beginPicker=new DatePickerDialog(getContext(),bD,dateAndTime.get(Calendar.YEAR), dateAndTime.get(Calendar.MONTH), dateAndTime.get(Calendar.DAY_OF_MONTH)); finishPicker=new DatePickerDialog(getContext(),fD,dateAndTime.get(Calendar.YEAR), dateAndTime.get(Calendar.MONTH), dateAndTime.get(Calendar.DAY_OF_MONTH)); beginPicker.getDatePicker().setMaxDate(dateAndTime.getTimeInMillis()); setInitialDateTime(beginDate); setInitialDateTime(finishDate); return view; } But now there was a problem. If I re-select the new date on the first DatePickerDialog, then the second minimum does not change
first datepicker
second datepicker
again first datepicker
Again the second datepicker



