如何禁用以往在Android的日期选择器日期? [英] How to disable past dates in Android date picker?

查看:205
本文介绍了如何禁用以往在Android的日期选择器日期?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何禁用过去的日期,在Android的日期选择器?

@覆盖     受保护的对话框onCreateDialog(INT ID){         开关(ID){         案例DATE_DIALOG_ID:             //设置日期选取器为当前日期             返回新DatePickerDialog(这一点,datePickerListener,年,月,                     日);         }         返回null;     }

 私人DatePickerDialog.OnDateSetListener datePickerListener =新DatePickerDialog.OnDateSetListener(){

    公共无效onDateSet(DatePicker的观点,诠释selectedYear,
            INT selectedMonth,诠释selectedDay){
        年= selectedYear;
        一个月= selectedMonth + 1;
        天= selectedDay;

        startdate.setText(新的StringBuilder()追加(天).append( - )
                .append(得到月(月+ 1))附加( - )。追加(年)
                。附加( ));




    }


};
 

解决方案

您可以做

  datePicker.setMinDate(System.currentTimeMillis的() -  1000);
 

这台今天的日期作为最小的日期和所有的过去的日期将被禁用。

日期选择器的DatePicker 的对象,如果您使用的是 DatePickerDialog <对象/ code>,你可以做

  datePickerDialog.getDatePicker()setMinDate(System.currentTimeMillis的() -  1000)。
 

注意: setMinDate 在11 API中引入

How to disable past dates in Android date picker?

@Override protected Dialog onCreateDialog(int id) { switch (id) { case DATE_DIALOG_ID: // set date picker as current date return new DatePickerDialog(this, datePickerListener, year, month, day); } return null; }

private DatePickerDialog.OnDateSetListener datePickerListener = new DatePickerDialog.OnDateSetListener() {

    public void onDateSet(DatePicker view, int selectedYear,
            int selectedMonth, int selectedDay) {
        year = selectedYear;
        month = selectedMonth+1;
        day = selectedDay;

        startdate.setText(new StringBuilder().append(day).append("-")
                .append(getMonth(month + 1)).append("-").append(year)
                .append(" "));




    }


};

解决方案

You can do

datePicker.setMinDate(System.currentTimeMillis() - 1000);

which sets today's date as minimum date and all the past dates are disabled.

datePicker is an object of DatePicker if you are using an object of DatePickerDialog you can do

datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);

Note: setMinDate was introduced in API 11

这篇关于如何禁用以往在Android的日期选择器日期?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆