Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何增加从日期选择器中选择的日期?_Android - Fatal编程技术网

Android 如何增加从日期选择器中选择的日期?

Android 如何增加从日期选择器中选择的日期?,android,Android,下面是我的代码。我想在这里实现的是从日期选择器中选择一个日期,并将其设置为curretToday。但当我转到下一个日期时,它会增加今天的日期,而不是增加所选日期。我不知道我错在哪里。请帮帮我 getDate(icount); iv_refresh.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) {

下面是我的代码。我想在这里实现的是从日期选择器中选择一个日期,并将其设置为curretToday。但当我转到下一个日期时,它会增加今天的日期,而不是增加所选日期。我不知道我错在哪里。请帮帮我

    getDate(icount);

    iv_refresh.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            icount = 0;
            getDate(icount);
        }
    });

    rightarrow.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {


                getDate(++icount);

        }
    });

    leftarraow.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            getDate(--icount);
        }
    });



    appTitleTextView = (TextView) findViewById(R.id.tool_bar_app_title_textview);

    toggle = new ActionBarDrawerToggle(
            this, drawer, toolbar, R.string.drawer_open, R.string.drawer_close);
}
private void getDate(int i) {

    if(new DatePickerFragment(tv_date).datePickerDate == null) {
        Calendar calendar = Calendar.getInstance();
        calendar.add(Calendar.DAY_OF_YEAR, i);
        currentToday = dateFormat.format(calendar.getTime());
        tv_date.setText(currentToday);


    } else {

        Calendar calendar = Calendar.getInstance();
        calendar.add(Calendar.DAY_OF_YEAR,i);
        currentToday =new DatePickerFragment(tv_date).datePickerDate;
        tv_date.setText(currentToday);


    }

这将帮助您增加日期

public Date getIncrementedDate(Date selectedDate) {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar c = Calendar.getInstance();
    c.setTime(sdf.parse(selectedDate));
    c.add(Calendar.DATE, 1);  // number of days to add
    selectedDate = sdf.format(c.getTime());  // selectedDate is now the new date
return selectedDate;
}
您可以使用下一个代码:

public Date incrementDay(Date date) {
    Calendar c = Calendar.getInstance();
    c.setTime(date);
    c.add(Calendar.DAY_OF_YEAR, 1); 
    return new Date(c.getTimeInMillis());
}

如果日期是从getTime日期开始,我可以增加日期。我的问题是,当我从日期选择器中选择日期时,我无法增加所选日期。您必须创建一个方法GetIncrementedDate selectedDate并编写上述逻辑,然后根据需要进行修改。请检查并让我知道否。仍然相同如果您的代码仍然与所讨论的相同,那么它将无法工作。您必须将datepicker日期传递给getDate方法,并使用它来递增,而不是使用calendar.getInstance。