1

我的活动有 3 个日期选择器。当我单击第一个日期选择器并进行更改时,它会反映到其他日期选择器。但是当我点击它时,每个日期选择器都应该显示当前日期。

当我在第一个日期选择器上选择日期 23-07-1993 并将其设置在编辑文本中时,然后我单击第二个日期选择器它显示日期 23-07-1993。因此我在第一个选择器中所做的更改反映在这里.

我想要的是每次单击日期选择器时它都应该显示当前日期,它不应该反映其他选择器的更改。

我的 .java 类是

  private void setDateOfBirth() {
  DatePickerDialog.OnDateSetListener dateOfBirth = new DatePickerDialog.OnDateSetListener() {
           @Override
           public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {
             calendar.set(Calendar.YEAR, year);
             calendar.set(Calendar.MONTH, monthOfYear);
             calendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
             updateDateOfBirth();
           }//onDateSet

           private void updateDateOfBirth() {
              String myFormat = "yyyy-MM-dd"; //In which you need put here
              SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);
              date_of_birth = sdf.format(calendar.getTime());
              Log.d("date_of_birth",date_of_birth);
              edittext_dateOfBirth.setText(date_of_birth);
           }//updateRenewalDate
    };//DatePickerDialog
}

private void setJoinDate() {
DatePickerDialog.OnDateSetListener joinDate = new DatePickerDialog.OnDateSetListener() {
           @Override
           public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {
             calendar.set(Calendar.YEAR, year);
             calendar.set(Calendar.MONTH, monthOfYear);
             calendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
             updateJoinDate();
           }//onDateSet

           private void updateJoinDate() {
              String myFormat = "yyyy-MM-dd"; //In which you need put here
              SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);
              join_date = sdf.format(calendar.getTime());
              Log.d("join_date",join_date);
              edittext_joinDate.setText(join_date);
           }//updateJoinDate
        };//DatePickerDialog
}
4

1 回答 1

1

您在它们之间使用相同的日历对象,这就是它们都被反映的原因。为每个日期选择器制作三个单独的日历对象。

于 2013-03-11T10:25:35.200 回答