如何在Android中的DatePickerFragment中禁用将来的日期选择?

Jam*_*nes 1 android android-datepicker

所以我读过其他帖子,但仍然无法让它正常工作.我想禁用某人从我的datepickerfragment中选择未来日期的功能.任何帮助将不胜感激,谢谢!

[更新] 2015年4月26日 - 解决了,评论或回答的每个人 - 他们的解决方案有效.

调用datepicker的函数:

mSearchButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            DatePickerFragment datePickerFragment = new DatePickerFragment();
            datePickerFragment.show(getSupportFragmentManager(), "datepicker");

        }
    });
Run Code Online (Sandbox Code Playgroud)

DatePickerFragment代码:

public static class DatePickerFragment extends DialogFragment
        implements DatePickerDialog.OnDateSetListener {

    public EditText editText;
    DatePicker dpResult;

    public Dialog onCreateDialog(Bundle savedInstanceState) {
        // Use the current date as the default date in the picker
        final Calendar c = Calendar.getInstance();
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH);
        int day = c.get(Calendar.DAY_OF_MONTH);

        return new DatePickerDialog(getActivity(), this, year, month, day);

    }

    public void onDateSet(DatePicker view, int year, int month, int day) {

        Intent goSearchSelectedDate = new Intent(getActivity(), SearchByDate.class);
        goSearchSelectedDate.putExtra("day", String.valueOf(day));
        goSearchSelectedDate.putExtra("month", String.valueOf(month));
        goSearchSelectedDate.putExtra("year", String.valueOf(year));
        Log.d("month", String.valueOf(year));
        startActivity(goSearchSelectedDate);

    }
}
Run Code Online (Sandbox Code Playgroud)

Ans*_*agi 6

您只需要添加一行 DatePickerDialog

datePicker.getDatePicker().setMaxDate(calendar.getTimeInMillis());
Run Code Online (Sandbox Code Playgroud)