aen*_*hik 7 java android-datepicker
我想在android日期选择器中的特定月份禁用星期日和特定日期
我使用的Datepicker是android datepicker:
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MONTH, 1);
calendar.setMinimalDaysInFirstWeek(27);
// calendar.add(Calendar.DAY_OF_MONTH, 1);
//calendar.set(2016,11,23);
// new DatePickerDialog(LoginSuccess.this, listener, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)).show();
DatePickerDialog dpDialog = new DatePickerDialog(LoginSuccess.this, listener, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH));
// dpDialog.updateDate(2016,11,23);
DatePicker datePicker = dpDialog.getDatePicker();
//datePicker.updateDate(2016,11,23);
// Date newDate = calendar.getTime();
//dpDialog.getDatePicker().setMinDate(newDate.getTime());
//datePicker.init();
if (calendar.get(Calendar.DAY_OF_MONTH)==Calendar.SUNDAY) {
// dpDialog.setTitle("Sorry Sundays wont be accepted");
// dpDialog.setMessage("not selected");
// dpDialog.show();
//datePicker.setBackgroundColor(000000);
Color.parseColor("#000000");
}
else {
long now = System.currentTimeMillis();
datePicker.setFirstDayOfWeek(Calendar.MONDAY);
datePicker.setMinDate(now + (1000 * 60 * 60 * 24 * 1));
datePicker.setMaxDate(calendar.getTimeInMillis());
dpDialog.show();
}
public DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MONTH, 1);
//calendar.set(2016,11,23);
display.setText("Selected Date:" + (dayOfMonth) + "/" + (monthOfYear + 1) + "/" + year);
Button ok = (Button) findViewById(R.id.confirm);
ok.setOnClickListener((v) -> {
Intent intent = new Intent(LoginSuccess.this, Confirm.class);
intent.putExtra("Date", dayOfMonth + "/" + (monthOfYear + 1) + "/" + year);
intent.putExtra("name", (String) spinnerOsversions.getSelectedItem());
intent.putExtra("email4", email3.toString());
intent.putExtra("bikeno4", bikeno3.toString());
intent.putExtra("fname", fname.toString());
//intent.putExtras(b);
startActivity(intent);
finish();
});
}
Run Code Online (Sandbox Code Playgroud)
SetMinDate并且setMaxdate工作完美,但我只想禁用星期日和特定的日子.
这对于默认的 DatePickerDialog 来说是不可能的。您可能想查看MaterialDateTimePicker。
就在com.wdullaer.materialdatetimepicker.date.DatePickerDialog你有方法的情况下public void setSelectableDays(Calendar[] selectableDays)。
| 归档时间: |
|
| 查看次数: |
2408 次 |
| 最近记录: |