相关疑难解决方法(0)

如何在android中的datepicker对话框中设置最大日期?

在我的应用程序中使用日期选择器来设置date.i想要根据系统日期设置日期选择器最大日期为今天日期.我不知道如何将日期选择器最大日期设置为今天日期.任何人都知道帮助我解决这个问题.

我的日期选择器编码是:

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 + …
Run Code Online (Sandbox Code Playgroud)

android android-datepicker

94
推荐指数
4
解决办法
9万
查看次数

Android datepicker min最大日期为api 11级之前

我试图将Android中的日期选择器的最小和最大日期设置为API级别11之前.我使用以下代码:

mDatePickerField = startDatePickerDialog.getClass().getDeclaredField("mDatePicker");
mDatePickerField.setAccessible(true);

DatePicker startDatePickerInstance =(DatePicker)mDatePickerField.get(startDatePickerDialog);
startDatePickerInstance.init(mYearMin, mMonthMin, mDayMin, new DatePicker.OnDateChangedListener() {
    @Override
    public void onDateChanged(DatePicker datePicker, int i, int i1, int i2) {
        Date maxDate = new Date(mYearMax, mMonthMax, mDayMax, 0, 0, 0);
        Date selectedDate = new Date(i, i1, i2, 0, 0, 0);
        if (selectedDate.after(maxDate)) {
            datePicker.updateDate(mYearMax, mMonthMax, mDayMax);                                        
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,该updateDate方法onDateChanged再次触发,并且日期选择器未更新.
任何人都可以帮助解决问题吗?

android android-datepicker

22
推荐指数
4
解决办法
2万
查看次数

如何隐藏过去的日期并限制用户仅选择将来的日期

如何在DatePicker对话框中隐藏过去的日期?我不想让用户选择过去的日期

什么是最好的方式?如果我想限制用户只选择未来的日期!

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        .................................................
        editDate.setOnClickListener(new View.OnClickListener() {

            @SuppressWarnings("deprecation")
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                showDialog(DIALOG_DATE);
            }
        });   

    }

     @Override
        protected Dialog onCreateDialog(int id) {
            switch (id) {
            case DIALOG_DATE:
                return new DatePickerDialog(this, new OnDateSetListener() {

                    @Override
                    public void onDateSet(DatePicker view, int year,
                            int monthOfYear, int dayOfMonth) {
                        dateTime.set(year, monthOfYear, dayOfMonth);
                        editDate.setText(dateFormatter
                                .format(dateTime.getTime()));
                    }
                }, dateTime.get(Calendar.YEAR),
                   dateTime.get(Calendar.MONTH),
                   dateTime.get(Calendar.DAY_OF_MONTH));
            }
            return null;
     }

}
Run Code Online (Sandbox Code Playgroud)

android android-datepicker

16
推荐指数
2
解决办法
1598
查看次数

标签 统计

android ×3

android-datepicker ×3