如何使用变量设置Calendar

时间:2013-04-10 07:10:32

标签: java android

我有一套日历,可以在我的申请中设置一周中的一周。

这是变量 1。

Long date1 = cursor.getLong(12); // first I load a choosen date to a database
//date result is 1365569546000

//then I convert to string
SimpleDateFormat sdfd = new SimpleDateFormat("d");
String day3 = sdfd.format(date1);

SimpleDateFormat sdfm = new SimpleDateFormat("M");
String month3 = sdfm.format(date1);

SimpleDateFormat sdfy = new SimpleDateFormat("yyyy");
String year3 = sdfy.format(date1);

intent.putExtra("days",day3);
intent.putExtra("months",month3);
intent.putExtra("years",year3);

2个新活动。

Bundle extras2 = getIntent().getExtras();
        dayWeek = extras2.getInt("days");
        monthWeek = extras2.getInt("months");
        yearWeek = extras2.getInt("years");

在我使用手动插入之前,它的工作结果是 2

这是代码。

Calendar calFr = Calendar.getInstance(TimeZone.getTimeZone("Asia/Jakarta"));
        calFr.setFirstDayOfWeek(Calendar.MONDAY);
        calFr.set(2013, Calendar.APRIL, 10);
int weekOfMonthFr = calFr.get(Calendar.WEEK_OF_MONTH);
        TextView txtMinggu = (TextView) findViewById(R.id.week);
        txtMinggu.setText(""+weekOfMonthFr);

,但现在我使用变量EXTRAS来设置一周中的一周。

这是代码

calFr.set(yearWeek, monthWeek, dayWeek);
  

yearWeek = 2013;

     

monthWeek = 4;

     

dayWeek = 10;

但结果是 5

我希望结果是 2

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

  

你得到的输出是对的..

因为当您设置月4时,将需要May

因为月份的值将从0开始

点击Constant Field Values 所以

January -0
Feb    - 1
Mar    -2
April  -3
May -   4

所以May 10th is Friday,所以它会给5