【问题标题】:Adding Days To Date Picker date添加日期到日期选择器日期
【发布时间】:2014-06-17 14:57:12
【问题描述】:

我需要帮助将此代码添加 282 天

public void onClick_add282(View v) {


TextView tv_output; 
tv_output = (TextView) findViewById(R.id.tv_output);

dPicker = (DatePicker)findViewById(R.id.dp_cal);

Integer dYear = dPicker.getYear();
Integer dMonth = dPicker.getMonth()+1;
Integer dDate = dPicker.getDayOfMonth();

StringBuilder ad=new StringBuilder();
ad.append(dDate.toString()).append("-").append(dMonth.toString()).append("-").append(dYear.toString()).append("");
String dStr=ad.toString();
tv_output.setText(dStr);



}

我试着像这样在这一行添加 282

    Integer dDate = dPicker.getDayOfMonth()+282;

它返回 300-6-2014(今天是我住的 18-6-2014)

编辑:我不是要添加到当前日期,而是要添加到用户选择的日期

【问题讨论】:

  • 您可以在这里找到答案:stackoverflow.com/questions/8738369/…
  • 感谢 berserk,请参阅编辑
  • 我设法使用链接狂暴的工作,谢谢,抱歉没有足够的代表来支持评论
  • 很高兴它有帮助。而且无需抱歉。我很高兴问题得到解决:)

标签: android datepicker


【解决方案1】:

嗯?也许你混淆了一些东西。你设置了一个日期监听器吗?

这里截取了一段代码,我这样做了:

一些全局变量:

public int gl_year = -1, gl_month = -1, gl_day = -1;

这是打开日期选择器按钮的定义

    datePickerButton.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            if (debug)
                Log.d(TAG, "datePickerButton.setOnClickListener() ");
            new DatePickerDialog(MainActivity.this, dateListener, gl_year,
                    gl_month, gl_day).show();
        }
    });

这就是听众

private DatePickerDialog.OnDateSetListener dateListener = new DatePickerDialog.OnDateSetListener() {

    public void onDateSet(DatePicker view, int year, int monthOfYear,
            int dayOfMonth) {
        int displMonth = monthOfYear + 1;
        if (debug)
            Log.d(TAG, "onDateSet() " + year + "/" + displMonth + "/"
                    + dayOfMonth);
        Calendar selectedDate = null;
        selectedDate = Calendar.getInstance();
        gl_year = year;
        gl_month = monthOfYear;
        gl_day = dayOfMonth;
        selectedDate.set(gl_year, gl_month, gl_day);
        calendarView.setDate(selectedDate.getTimeInMillis());
    }
};

如果您在打开日期选择器对话框之前将 282 的值添加到整数变量 gl_day,它应该可以完成工作。如果不将日历对象更改为毫秒时间并添加 24364800000 的值

【讨论】:

  • 我没有日期监听器,我的活动 xml 有一个日期选择器、一个按钮和一个文本视图,我想要做的是当单击按钮时添加 282 天到日期在日期选择器中。
  • 为什么要重新发明轮子?您必须查看日期是否大于 30 或 31(有时为 28 或 29)并计算要添加的月份。我强烈建议使用数据选择器。处理日期和时间很容易。
猜你喜欢
  • 1970-01-01
  • 2020-12-17
  • 1970-01-01
  • 2017-12-29
  • 2014-04-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多