我制作了自定义Calendar.It将设备的日期显示为当前日期。但我的要求是在日期前12天显示为当前日期。例如 - 今天是21,但我希望我的日历显示9.我也希望同年也这样做。 我知道如何获得当前日期。我正在使用此代码。
_calendar = Calendar.getInstance(Locale.getDefault());
month = _calendar.get(Calendar.MONTH) + 1;
year = _calendar.get(Calendar.YEAR);
Log.d(tag, "Calendar Instance:= " + "Month: " + month + " " + "Year: " + year);
我的新代码是
_calendar = Calendar.getInstance(Locale.getDefault());
month = _calendar.get(Calendar.MONTH) + 1;
year = _calendar.get(Calendar.YEAR);
Log.d(tag, "Calendar Instance:= " + "Month: " + month + " " + "Year: " + year);
/*_calendar.add(Calendar.DAY_OF_YEAR, -12);*/
_calendar.roll(Calendar.DAY_OF_MONTH, -12);
_calendar.roll(Calendar.MONTH, -12);
Calendar _calendar=Calendar.getInstance();
答案 0 :(得分:1)
尝试:
_calendar.roll(Calendar.DAY_OF_YEAR, -12);
_calendar.roll(Calendar.YEAR, -12);
这将roll提前12天,然后是12岁。
答案 1 :(得分:0)
在许多语言中,NOW
是一个在调用时返回DateTime
时间的函数。你可以add
一个负数( - )的天数,它将返回你需要的。我总是忘记这一点,认为你只能添加一个积极的,但这是不正确的。 ;-)
希望有所帮助。
答案 2 :(得分:0)
试试吧。
_calendar = Calendar.getInstance(Locale.getDefault());
_calendar.setTime(new Date());
_calendar.add(Calendar.DATE, -12);
Date twelveDaysAgo = _calendar.getTime();
答案 3 :(得分:0)
这会将日期移回12天,如果需要也会改变月/年。
_calendar.add(Calendar.DAY_OF_YEAR, -12);