如何在Android的日期选择器对话框中设置的最大日期? [英] How set maximum date in datepicker dialog in android?

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

问题描述

在我的应用程序正在使用日期选取器设置date.i要设置根据系统date.i日期选取器最大日期为今天的日期不知道如何设置日期选择器最大日期为今天date.Can任何一个知道帮我解决这个问题。

我的日期选择器编码是:

 私人诠释pYear;
私人诠释pMonth;
私人诠释PDAY;
静态最终诠释DATE_DIALOG_ID = 0;

最后的日历C = Calendar.getInstance();
pYear = c.get(Calendar.YEAR);
pMonth = c.get(Calendar.MONTH);
PDAY = c.get(Calendar.DAY_OF_MONTH);

//日期选取器
公共对话onCreateDialog(INT ID){
    开关(ID){
    案例DATE_DIALOG_ID:

        DatePickerDialog.OnDateSetListener pDateSetListener =新DatePickerDialog.OnDateSetListener(){

            公共无效onDateSet(DatePicker的观点,年整型,
                    INT monthOfYear,诠释DAYOFMONTH){

                pYear =年;
                pMonth = monthOfYear;
                PDAY = DAYOFMONTH;

                e_dob.setText(新的StringBuilder()
                        //设置日期editext
                        .append(PDAY).append(/)。追加(pMonth + 1)
                        。.append(/)追加(pYear).append());
            }
        };
        返回新DatePickerDialog(这一点,pDateSetListener,pYear,pMonth,
                PDAY);

    }
    返回null;
}
 

解决方案

使用<一个href="https://developer.android.com/reference/android/widget/DatePicker.html#setMaxDate%28long%29"><$c$c>setMaxDate().

例如,替换返回新DatePickerDialog(这一点,pDateSetListener,pYear,pMonth,PDAY)像这样语句:

  DatePickerDialog对话框=新DatePickerDialog(这一点,pDateSetListener,pYear,pMonth,PDAY);
    。dialog.getDatePicker()setMaxDate(新日期()的getTime());
    返回对话框;
 

In my application am using date picker to set date.i want to set date picker maximum date is as today date according to system date.i don't know how to set date picker maximum date as today date.Can any one know help me to solve this problem.

My date picker coding is:

private int pYear;
private int pMonth;
private int pDay;
static final int DATE_DIALOG_ID = 0;

final Calendar c = Calendar.getInstance();
pYear = c.get(Calendar.YEAR);
pMonth = c.get(Calendar.MONTH);
pDay = c.get(Calendar.DAY_OF_MONTH);

// Date picker
public Dialog onCreateDialog(int id) {
    switch (id) {
    case DATE_DIALOG_ID:

        DatePickerDialog.OnDateSetListener pDateSetListener = new DatePickerDialog.OnDateSetListener() {

            public void onDateSet(DatePicker view, int year,
                    int monthOfYear, int dayOfMonth) {

                pYear = year;
                pMonth = monthOfYear;
                pDay = dayOfMonth;

                e_dob.setText(new StringBuilder()
                        // to set date in editext
                        .append(pDay).append("/").append(pMonth + 1)
                        .append("/").append(pYear).append(" "));
            }
        };
        return new DatePickerDialog(this, pDateSetListener, pYear, pMonth,
                pDay);

    }
    return null;
}

解决方案

Use setMaxDate().

For example, replace return new DatePickerDialog(this, pDateSetListener, pYear, pMonth, pDay) statement with something like this:

    DatePickerDialog dialog = new DatePickerDialog(this, pDateSetListener, pYear, pMonth, pDay);
    dialog.getDatePicker().setMaxDate(new Date().getTime());
    return dialog;

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

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