【发布时间】:2016-11-29 10:59:03
【问题描述】:
我已经尝试了很多,但对我没有任何效果,谁能帮助我如何禁用日历中的某些日期 这是我的代码,但它只是隐藏了过去的日期。
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);
DatePickerDialog datePickerDialog = new DatePickerDialog(MoreDetail.this,
new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
String s = dayOfMonth + "" + "-" + monthOfYear + 1 + "" + "-" + year + "";
}
}, mYear, mMonth, mDay);
Calendar minDate = Calendar.getInstance();
minDate.set(mYear, mMonth, mDay);
datePickerDialog.getDatePicker().setMinDate(minDate.getTimeInMillis());
datePickerDialog.show();
【问题讨论】:
-
你不能禁用某些日期 - 你只能设置范围(最小/最大)...但是这个
String s = dayOfMonth + "" + "-" + monthOfYear + 1 + "" + "-" + year + "";是great -
@Innocent:检查一下 -> stackoverflow.com/a/34730506/4018207
-
到目前为止,您可以做的是创建一个应该禁用的日期列表。用户选择日期后,检查日期是否在禁用日期列表中。如果它在禁用日期列表中,则生成错误祝酒词并再次显示日历。
-
@AndiGeeky 你知道的更多图书馆请推荐我
-
@Innocent:也检查一下-> github.com/square/android-times-square
标签: android android-calendar android-datepicker