2016-07-26 3 views
3

안드로이드에서 기본 날짜 선택 도구를 사용 중입니다. 이제 대화 상자를 닫으십시오. 날짜 선택 후 날짜 선택 도구를 클릭하여 안드로이드에서 닫아야합니다.날짜 선택 후 날짜 버튼을 클릭하지 않고 날짜 선택 도구를 닫아야합니다.

private void updateDOB() { 
    String myFormat = "yyyy/MM/dd"; //In which you need put here 
    SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US); 
      btnDOB.setText(sdf.format(calendar.getTime())); 
      tvDOB.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.colorPrimary)); 
} 

private void selectDOB() { 
    DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener() { 
     @Override 
     public void onDateSet(DatePicker datePicker, int year, int month, int day) { 
      calendar.set(Calendar.YEAR, year); 
      calendar.set(Calendar.MONTH, month); 
      calendar.set(Calendar.DAY_OF_MONTH, day); 
      updateDOB(); 
     } 
    }; 
    new DatePickerDialog(ActivityAddChild.this, listener, 
      calendar.get(Calendar.YEAR), 
      calendar.get(Calendar.MONTH), 
      calendar.get(Calendar.DAY_OF_MONTH)).show(); 
} 

답변

2

@OverrideonDateChangeddismiss();입니다.

new DatePickerDialog(context, null, year, month, day) { 
    @Override 
    public void onDateChanged(@NonNull DatePicker view, int year, int month, int dayOfMonth) { 
     /* Here you got the date without "OnDateSetListener" */ 

     dismiss(); 
    } 
}.show(); 

참조 된 this 대답.

Android 5.0에서는 see there에서 작동하지 않습니다.

대신 MaterialDateTimePicker을 사용하십시오.

관련 문제