在android上打开过去一天的日历

时间:2016-11-25 07:27:46

标签: java android

我正在尝试打开过去几天的日历。例如今天的日期是2016年11月25日。日历应该从2016年11月24日开放到1-01-1900,用户可以选择任何过去的日期。这些是我的代码段

class ConfirmationsController < Devise::ConfirmationsController private def after_confirmation_path_for(resource_name, resource) your_new_after_confirmation_path end end

注意:日历不应显示当前日期和未来日期。

3 个答案:

答案 0 :(得分:0)

DatePickerDialog包含方法setMaxDate(Long millis)setMinDate(Long millis)

datePickerDialog.getDatePicker().setMaxDate();

答案 1 :(得分:0)

根据需要添加最小和MAx日期

long now = System.currentTimeMillis() - 1000;
//dp_time.setMinDate(now);
dp_time.setMaxDate(now-(1000*60*60*24*1));

答案 2 :(得分:0)

尝试以下代码

@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
    Calendar calendar = Calendar.getInstance();
    int year    = calendar.get(Calendar.YEAR);
    int month   = calendar.get(Calendar.MONTH);
    int day     = calendar.get(Calendar.DAY_OF_MONTH);

    DatePickerDialog dialog = new DatePickerDialog(getContext(), listener, year, month, day);
    Field mDatePickerField;
    try {
            mDatePickerField = dialog.getClass().getDeclaredField("mDatePicker");
            mDatePickerField.setAccessible(true);
    } catch (Exception e) {
            e.printStackTrace();
    }
    dialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);
    return dialog;
}