如何从在andriod中的日期选择器中输入的天数计算50天。
示例如果用户选择2013年2月23日,那么从xx / xx / xxxx开始的第50天,同样是第100天,第200天,如第1000天,请帮助我
最佳答案
据我了解您的问题,您可以尝试执行以下操作:
// this const is 24 hours in milliseconds: 24 hours in day, 60 min. in one hour, 60 sec. in one min., 1000 ms. in one sec.
private static final int TWENTY_FOUR_HOURS = 24 * 60 * 60 * 1000;
//...
Date dateYouChose;
Date dateYouChosePlus50Days = new Date(dateYouChose.getTime() + (50 * TWENTY_FOUR_HOURS));
更新:
因此,也许对您有好处(但请注意,我没有测试此代码,也许我在某些方面犯了错误):
final DatePicker datePicker;
final Button btnDisplayCelebrationTimes;
final TextView txtDatePlus50;
final TextView txtDatePlus100;
// ...
btnDisplayCelebrationTimes.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final SimpleDateFormat dateFormat = new SimpleDateFormat("dd.MM.yyyy");
final GregorianCalendar gregorianCalendar;
gregorianCalendar = new GregorianCalendar(datePicker.getYear(), datePicker.getMonth(),
datePicker.getDayOfMonth());
gregorianCalendar.add(Calendar.DAY_OF_MONTH, 50);
final Date datePlus50 = gregorianCalendar.getTime();
txtDatePlus50.setText(dateFormat.format(datePlus50));
gregorianCalendar = new GregorianCalendar(datePicker.getYear(), datePicker.getMonth(),
datePicker.getDayOfMonth());
gregorianCalendar.add(Calendar.DAY_OF_MONTH, 100);
final Date datePlus100 = gregorianCalendar.getTime();
txtDatePlus100.setText(dateFormat.format(datePlus100));
}
});