2

私は2つ持っていて、今日の日付をtoに、7日前の日付をInにしたいdatepicker Fromto 思います。たとえば、今日の日付は 01/10/2012to7日前の日付である23/9/2012必要があります。From

私がしたことは、今日の日付を取得することはできますが、7日前に日付を取得するにはどうすればよいですか?

Calendar ToDateCal=Calendar.getInstance();
    DatePickerDialog.OnDateSetListener td=new DatePickerDialog.OnDateSetListener() {
        public void onDateSet(DatePicker view,int year,int monthOfYear,int dayOfMonth) {
            ToDateCal.set(Calendar.YEAR, year);
            ToDateCal.set(Calendar.MONTH, monthOfYear);
            ToDateCal.set(Calendar.DAY_OF_MONTH, dayOfMonth);
            updateToDate();
        }
    };


private void updateToDate(){
    try{
    int iDay;
    int iMonth;
    int iYear;

    iDay=ToDateCal.get(Calendar.DATE);
    iMonth=ToDateCal.get(Calendar.MONTH);
    iMonth=iMonth+1;
    iYear=ToDateCal.get(Calendar.YEAR);

    String sTDate=iDay+"/"+iMonth+"/"+iYear;
    ToDate.setText(sTDate);
}
    catch(Exception ex){
        sResponse=ex.toString();
    }
}

Edittextの[イベント]をクリックします

        ToDate.setOnClickListener(new View.OnClickListener(){
            public void onClick(View v){
                new DatePickerDialog(DRSTClaimPage.this,td,ToDateCal.get(Calendar.YEAR),
                ToDateCal.get(Calendar.MONTH),ToDateCal.get(Calendar.DAY_OF_MONTH)).show();
            }
        });

日付を設定します

   FromDate.setText(dt.getStDt());

public String getStDt(){
    return ((dt.getDate())+"/"+(dt.getMonth()+1)+"/"+(dt.getYear()+1900));

}

このような ここに画像の説明を入力してください

4

1 に答える 1

3

これはあなたを助けるかもしれません:

Calendar currDate=Calendar.getInstance();

Calendar weekBackDate=Calendar.getInstance();
weekBackDate.add(Calendar.DAY_OF_MONTH,-7);

編集 :

あなたの質問をよく見ると、7日前のFromDate、dateにテキストを設定したいと思います。次に、上記のコードを次のように使用できます。

    private void updateToDate(){
        try{
        int iDay;
        int iMonth;
        int iYear;

        iDay=ToDateCal.get(Calendar.DATE);
        iMonth=ToDateCal.get(Calendar.MONTH);
        iMonth=iMonth+1;
        iYear=ToDateCal.get(Calendar.YEAR);

        String sTDate=iDay+"/"+iMonth+"/"+iYear;
        ToDate.setText(sTDate);

        setFromDate();
    }
        catch(Exception ex){
            sResponse=ex.toString();
        }
    }

private void setFromDate(){

     FromDate.setText(String.format("%1$td / %1$tm / %1$tY",ToDateCal));
}
于 2012-10-01T10:57:11.477 に答える