/ / DatePickerのユーザーを今日の日付の前にしか選択できないように制限する方法 - 18年 - android、android-widget

datePickerのユーザーをtoday_date - 18歳までの日付のみを選択できるように制限する方法 - android、android-widget

DatePickerを日付を選択できないように制限する方法将来は。登録に使用されるアクティビティにDatePickerがあります。ユーザーの年齢が18歳未満の場合、ユーザーは誕生日を選択できません(たとえば、today_date - 18歳以降の日付を選択できません)。

回答:

回答№1は2

どのAPIレベルについては言及されていません。ハニカム以降 DatePicker 許容範囲を制限するために使用できるsetMin / MaxDateメソッドがあります。


回答№2については2

私はあなたが今までに答えを得たことを願っています。以下は他の人にも役に立つかもしれません: 今日から18年後の日付をユーザーが選択できないようにするには、次のようにします。

1970年1月1日から現在までの年数(ミリ秒)

   Calendar cal = Calendar.getInstance();
cal.set(cal.get(Calendar.YEAR)+18,cal.get(Calendar.MONTH),cal.get(Calendar.DAY_OF_MONTH),
cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), 0);
long time = cal.getTimeInMillis();

datepickerで最大許容日として設定してください

   datepicker2.setMaxDate(time);

答えを探している人に役立つことを願っています


回答№3の場合は0

int minYear = currentYear - 18;今から18年前の年(現在の年)を数えます。そして、その日付を(最小年、現在の月、現在の日)で日付ピッカーの上限として設定します。

    private static void setMaxLimitInDatePicker(DatePickerDialog datePickerDialog) {
final Calendar calendar = Calendar.getInstance();

int currentYear = calendar.get(Calendar.YEAR);
int currentMonth = calendar.get(Calendar.MONTH);
int currentDay = calendar.get(Calendar.DAY_OF_MONTH);

int minYear = currentYear - 18;
int minMonth = currentMonth;
int minDay = currentDay;

calendar.set(minYear, minMonth, minDay);
long minDateInMilliSeconds = calendar.getTimeInMillis();

// Set 18 years from today as max limit of date picker
datePickerDialog.getDatePicker().setMaxDate(minDateInMilliSeconds);
}