2017-10-04 14 views
0

사용자가 날짜를 선택해야하는 간단한 활동이 있습니다 (시간 만없는 날짜). 정확한 확인을해야합니다. 첫째, dayOfMonth, monthOfYear 및 year를 3 가지 다른 텍스트보기에 넣은 다음 "if else"를 사용하여 (예 : < = 0 또는> = 31 ...과 같은) 조건을 작성하는 것으로 생각했습니다. 시도한 코드 :Android의 DatePickerDialog, 날짜 확인

하지만 작동하지 않습니다. dayOfMonth, monthOfYear 연도를 1 텍스트보기에만 넣을 수 있습니다. 이와 같이 :

 public void onClick(View v) { 
      final Calendar c = Calendar.getInstance(); 
      int mYear = c.get(Calendar.YEAR); 
      int mMonth = c.get(Calendar.MONTH); 
      int mDay = c.get(Calendar.DAY_OF_MONTH); 

      datePickerDialog = new DatePickerDialog(Date.this, 
        new DatePickerDialog.OnDateSetListener() { 

         @Override 
         public void onDateSet(DatePicker view, int year, 
               int monthOfYear, int dayOfMonth) { 
          tvDate.setText(dayOfMonth + "/" + (monthOfYear + 1) + "/" + year); 
         } 
        }, mYear, mMonth, mDay); 
      datePickerDialog.show(); 
     } 
    }); 
} 

내 경우에 유효성 검사를 올바르게 수행하는 방법은 무엇입니까? 그것은 아마 어리석은 질문이다. 그래서 미안하지만 나는 초보자 다.

감사합니다.

+0

? 당신은 검증이 필요하지 않습니다 –

답변

2

당신은 SimpleDateFormat를 사용하고 calanderObject.getTime()는 여기에 내가 방법 내부 TextView의 참조를 전달 해요 String

의 형태로 당신에게 잘 형식의 날짜를 제공 할 것입니다. 그래도 중요하지 않습니다.

private void setDate(final TextView tV) { 
    final Calendar cal = Calendar.getInstance(); 

    DatePickerDialog dialog = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() { 
     @Override 
     public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { 
      SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MMM-yyyy", Locale.ENGLISH); 
      cal.set(year, monthOfYear, dayOfMonth); 
      tV.setText(dateFormat.format(cal.getTime())); 
     } 
    }, cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH)); 
    dialog.show(); 
} 
0

데니스 난 그냥 당신이 달력 개체를 사용할 수있는 날짜 확인을 위해 그것을 추가 할 권리, 그것은

경우와 같은 오늘 날짜에 경기를 좋아하는 모든이 멋진 동작을 가지고 (someDate> = 현재) { ...

윤년 (29/2 매 4 년)을 고려해야 할 계산이있는 경우 캘린더에서 상속하는 GregorianCalendar를 사용해야합니다. 당신이 datepickerdialog를 사용하는 경우가 여기에 검증을 필요로하는 이유

https://developer.android.com/reference/java/util/GregorianCalendar.html