我想在用户从日期选择器中选择的特定日期添加一些月份。 例如,如果用户选择2016年1月31日,如果月数为1则应显示2016年3月2日或2016年3月30日应显示2016年4月30日等。 如果月数大于12,则应添加年份。 这是我的日期选择器:
@Override
protected Dialog onCreateDialog(int id) {
// TODO Auto-generated method stub
if (id == 999) {
DatePickerDialog dialog = new DatePickerDialog(this, myDateListener, year, month, day);
dialog.getDatePicker().setMaxDate(new Date().getTime());
return dialog;
}
return null;
}
private DatePickerDialog.OnDateSetListener myDateListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker arg0, int arg1, int arg2, int arg3) {
// TODO Auto-generated method stub
// arg1 = year
// arg2 = month
// arg3 = day
showDate(arg1, arg2+1, arg3);
}
};
private void showDate(int year, int month, int day) {
date.setText(new StringBuilder().append(day).append("/")
.append(month).append("/").append(year));
}
我将年,月,日作为整数值。
请帮忙......我不知道如何开始?
答案 0 :(得分:1)
public static Date addDays(Date date, int days)
{
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.DATE, days); //minus number would decrement the days
return cal.getTime();
}
从https://stackoverflow.com/a/18143654/1811771
复制N.B.如果你想从日,月,年制作日期
String str = year + "/" + month + "/" + day;
SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd");
Date date = formatter.parse(str);
答案 1 :(得分:1)
试试这个。这对我有用。
//如果你想在60天后约会。 yourCustomDate - 您要设置新日期的日期
Calendar calendar = Calendar.getInstance();
calendar.setTime(yourCustomDate);
calendar.add(Calendar.DAY_OF_YEAR, 60);
Date afterSixtyDaysDate = calendar.getTime();