Android datepicker自动更改年和月字段

时间:2014-11-17 09:32:34

标签: android datepicker

android中的默认DatePicker会更改年份,当我将月份从1月切换到12月时通过向上滚动(并且在切换天数时这样做)。它真的很烦人,令人困惑,我想禁用这个功能,但我无法找到任何方法或xml属性来做到这一点。

所以基本上我需要实现的是当您滚动数月或数天时,年份(和/或月份)文件结构不应受到影响。

请帮忙!

谢谢!

1 个答案:

答案 0 :(得分:0)

在班级中创建以下属性:

final Calendar cal = Calendar.getInstance();
private int oldYear = cal.get(Calendar.YEAR);
private int oldMonth = cal.get(Calendar.MONTH);
private int oldDay = cal.get(Calendar.DAY_OF_MONTH);

然后覆盖onDateChanged方法:

    @Override
    public void onDateChanged(DatePicker view, int year, int month, int day) {

        if (oldDay != day) {
            if (oldMonth != month) {
                month = oldMonth;
            }
            oldDay = day;
        }
        if (oldMonth != month) {
            if (oldYear != year) {
                year = oldYear;
            }
            oldMonth = month;
        }
    }