2014-01-27 25 views
2

我使用這個代碼來設置日期選擇自定義日期.. //方法來創建日期選擇器對話框Android的日期選擇18歲的驗證

public static class DatePickerFragment extends DialogFragment implements 
    DatePickerDialog.OnDateSetListener { 

    @Override 
    public Dialog onCreateDialog(Bundle savedInstanceState) { 
     // set default date 
     final Calendar c = Calendar.getInstance(); 
     int year = c.get(Calendar.YEAR); 
     int month = c.get(Calendar.MONTH); 
     int day = c.get(Calendar.DAY_OF_MONTH); 

     // Create a new instance of DatePickerDialog and return it 
     return new DatePickerDialog(getActivity(), this, year, month, day); 
    } 

    public void onDateSet(DatePicker view, int year, int month, int day) { 
     // get selected date 
     mYear = year; 
     mMonth = month; 
     mDay = day; 

     // show selected date to date button 
     dob.setText(new StringBuilder() 
      .append(mYear).append("-") 
      .append(mMonth + 1).append("-") 
      .append(mDay).append(" ")); 
    } 
} 

我的情況是,當過用戶設定的日期的日期應該驗證用戶是至少18歲..其他將顯示提醒用戶至少18歲..

回答

15

嘗試使用Calendar類。

public void onDateSet(DatePicker view, int year, int month, int day) { 
    Calendar userAge = new GregorianCalendar(year,month,day); 
    Calendar minAdultAge = new GregorianCalendar(); 
    minAdultAge.add(Calendar.YEAR, -18); 
    if (minAdultAge.before(userAge)) { 
     SHOW_ERROR_MESSAGE; 
    } 
} 

這應該做你想要什麼:)

+0

感謝兄弟,你救我的時候.... –

+0

你可以使用「給予好評」按鈕,並紀念這個答案爲接受的答案感謝我;) – datayeah

+0

我不能有15 ups這個投票了 –