如何更新Datepicker Android的minDate和maxDate

如何更新Datepicker Android的minDate和maxDate,android,datepicker,maxdate,mindate,updatedate,Android,Datepicker,Maxdate,Mindate,Updatedate,我有一个活动,包含两个日期选择器From和To以及一个名为Special request的按钮。 我在活动中做的第一件事是设置两个日期选择器的minDate和maxDate。然后点击按钮,我希望将minDate和maxDate更新为今天的日期+一天 下面是我首先调用的setDate方法: public void setDate() { final Calendar c = Calendar.getInstance(); year = c.get(Calendar.YEAR);

我有一个活动,包含两个日期选择器From和To以及一个名为Special request的按钮。 我在活动中做的第一件事是设置两个日期选择器的minDate和maxDate。然后点击按钮,我希望将minDate和maxDate更新为今天的日期+一天

下面是我首先调用的setDate方法:

public void setDate() {

    final Calendar c = Calendar.getInstance();
    year = c.get(Calendar.YEAR);
    month = c.get(Calendar.MONTH);
    day = c.get(Calendar.DAY_OF_MONTH);
    beginDate.init(year, month, day, null);
    endDate.init(year, month, day, null);
    long minTime = System.currentTimeMillis() - 1000; // -1 second
    beginDate.setMinDate(minTime + 1209600000L); // +14 days
    beginDate.setMaxDate(minTime + 31556952000L); // +1 year
    endDate.setMinDate(minTime + 1209600000L);
    endDate.setMaxDate(minTime + 31556952000L);
}
而setSpecialDate与之非常相似:

public void setSpecialDate() {

    long minTime = System.currentTimeMillis() - 1000; // -1 second
    beginDate.setMinDate(minTime + 86400000L); // +1 day
    beginDate.setMaxDate(minTime + 31556952000L); // +1 year
    endDate.setMinDate(minTime + 86400000L);
    endDate.setMaxDate(minTime + 31556952000L);
    final Calendar c = Calendar.getInstance();
    year = c.get(Calendar.YEAR);
    month = c.get(Calendar.MONTH);
    day = c.get(Calendar.DAY_OF_MONTH);
    beginDate.updateDate(year, month, day);
    endDate.updateDate(year, month, day);
}
我的侦听器在setDate之后调用,在setDate之前调用它不会改变任何东西:

public void addRequestListener() {

    specialRequest = (Button) findViewById(R.id.specialRequest);
    specialRequest.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            setSpecialDate();           
        }
    });
}

问题是setSpecialDate中的setMinDate和setMaxDate都不起作用,因为日期选择器不会显示低于最初设置的日期…

android:startYear=