private void findViewsById() {
fromDateEtxt = (EditText) findViewById(R.id.dobET);
fromDateEtxt.setInputType(InputType.TYPE_NULL);
fromDateEtxt.requestFocus();
}
private void setDateTimeField() {
fromDateEtxt.setOnClickListener(this);
Calendar newCalendar = Calendar.getInstance();
fromDatePickerDialog = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
Calendar dob = Calendar.getInstance();
dob.set(year, monthOfYear, dayOfMonth);
fromDateEtxt.setText(dateFormatter.format(dob.getTime()));
Calendar today = Calendar.getInstance();
dob.set(year, monthOfYear, dayOfMonth);
int age = today.get(Calendar.YEAR) - dob.get(Calendar.YEAR);
Integer ageInt = new Integer(age);
String ageS = ageInt.toString();
if(age >= 18) {
fromDateEtxt.setText(dateFormatter.format(dob.getTime()));
fromDateEtxt.setError(null);
}
else {
fromDateEtxt.setText("");
fromDateEtxt.setError("Age must be above 18 years.");
}
}
}, newCalendar.get(Calendar.YEAR), newCalendar.get(Calendar.MONTH), newCalendar.get(Calendar.DAY_OF_MONTH));
}
在這個例子中,我們希望日曆只顯示18歲以上的出生日期。我使用fromDateEtxt.setError(「年齡必須在18歲以上」),因爲如果用戶少於18歲。我怎樣才能實現年齡必須高於18的日曆
看看這個鏈接https://stackoverflow.com/a/44545781/8164071 –