在其他日期选择器对话框中基于所选日期禁用以前的日期

周杰伦

我想简单地解释这个问题,现在我有两个android datapicker对话框,“签入”和“签出”。签入日期选择器我已经将思维方式设置为今天,这意味着用户只能从今天开始选择。但是如何根据用户从入住日期选择器中选择的日期设置退房日期。

示例:今天3/11/2016

用户从入住日期中选择DatePicker:7/11/2016

我希望在退房Datepicker时禁用所有以前的日期(请参阅7/11/2016)。

我搜索了许多教程和论坛,并且大多数时间仅显示如何基于当前日期禁用通过日期。我的应用程序正在执行酒店登录系统

public void showDialog() {
    btncheckin = (Button) findViewById(R.id.checkInDate);
    btncheckout = (Button) findViewById(R.id.checkoutdate);
    btncheckin.setOnClickListener(
            new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    showDialog(DIALOG_ID);

                }


            }
    );
    btncheckout.setOnClickListener(
            new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    showDialog(DIALOG2_ID);

                }


            }
    );

}

@Override
protected  Dialog onCreateDialog(int id) {

    switch (id) {
        case DIALOG2_ID:

            DatePickerDialog datePickerDialog = new DatePickerDialog(this, dpickerListnerCheckOut, year_x, month_x, day_x);


            Calendar c = Calendar.getInstance();

            c.add(Calendar.DATE, 1);

            Date newDateBlock = c.getTime();
            datePickerDialog.getDatePicker().setMinDate(newDateBlock.getTime());

            return datePickerDialog;

        case DIALOG_ID:

        DatePickerDialog datePickerDialog2 = new DatePickerDialog(this, dpickerListnerCheckIn, year_x, month_x, day_x);
            Calendar c2 = Calendar.getInstance();

            c2.add(Calendar.DATE, 1);
            datePickerDialog2.getDatePicker().setMinDate(System.currentTimeMillis()-1000);

            return datePickerDialog2;
    }
    return null;
}


 DatePickerDialog.OnDateSetListener dpickerListnerCheckOut = new DatePickerDialog.OnDateSetListener() {
    @Override
    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
        year_x = year;
        month_x = month + 1;
        day_x = dayOfMonth;

         //Toast.makeText(PaymentActivity.this,year_x +"/"+month_x +" / "+day_x,Toast.LENGTH_SHORT).show();

        checkOutText.setText(year_x + "/" + month_x + "/ " + day_x);


    }
};


 DatePickerDialog.OnDateSetListener dpickerListnerCheckIn = new DatePickerDialog.OnDateSetListener() {
    @Override
    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
        year_x = year;
        month_x = month + 1;
        day_x = dayOfMonth;
        checkInText.setText(year_x + "/" + month_x + "/ " + day_x);
    }
};
周杰伦

在我的checkin dpickerlistener内部,添加以下行

try {
     String dateString = checkInDate;
     SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
     Date date = sdf.parse(dateString);
     Long minDate = date.getTime();
     } catch (java.text.ParseException e) {
            e.printStackTrace();
     }

在“签出日期选择器”对话框中

DatePickerDialog datePickerDialog = new DatePickerDialog(this, dpickerListnerCheckOut, year_x, month_x, day_x);
Calendar c = Calendar.getInstance();

         c.add(Calendar.DATE, 1);
         datePickerDialog.getDatePicker().setMinDate(minDate);

return datePickerDialog;

我完成的解决方案是,我尝试从checkin dpickerlistener minDate引起注意,并传递给checkout datepickerdialog minDate

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在其他日期选择器中选择日期时如何禁用日期选择器中的日期

来自分类Dev

如何限制用户基于Android中日期选择器中的其他日期设置日期

来自分类Dev

引导日期选择器未禁用以前的日期

来自分类Dev

重新打开对话框时,日期选择器对话框未显示所选日期

来自分类Dev

如何在日期选择器对话框中设置最大日期和最小日期

来自分类Dev

如何在Android的日期选择器对话框中显示所选日期的第二天日期?

来自分类Dev

如何将Android中的日期选择器对话框设置为昨天的日期

来自分类Dev

如何将Android中的日期选择器对话框设置为昨天的日期

来自分类Dev

在Android的日期选择器对话框中显示当前日期

来自分类Dev

如何从日期/时间选择器对话框中获取日期和时间并显示它?

来自分类Dev

无法创建日期选择器对话框

来自分类Dev

日期选择器对话框阴影的白色背景

来自分类Dev

更改日期选择器对话框主题

来自分类Dev

上次选择的日期未进入日期选择器对话框

来自分类Dev

如何限制用户在日期选择器对话框中选择过去的日期

来自分类Dev

日期选择器对话框无法在片段中工作

来自分类Dev

线性布局扩展中的“显示日期选择器”对话框不活动

来自分类Dev

同一对话框中的日期和时间选择器

来自分类Dev

如何将日期和时间选择器放在android的对话框中

来自分类Dev

我想使用数字日期选择器对话框和时间选择器对话框

来自分类Dev

Android日期选择器对话框-日期格式为dd / MMM / yyyy

来自分类Dev

车轮日期选择器对话框始终显示当前日期

来自分类Dev

如何删除或禁用日期选择器或其他输入中先前选择的值?

来自分类Dev

如何删除或禁用日期选择器或其他输入中先前选择的值?

来自分类Dev

如何在日期选择器中显示所选日期?

来自分类Dev

如何将在日期选择器中选择的日期传递给包含对话框片段的活动?

来自分类Dev

如何选择最大日期小于其他日期的行?

来自分类Dev

如何选择最大日期小于其他日期的行?

来自分类Dev

日期选择器对话框显示在编辑文本上双击

Related 相关文章

  1. 1

    在其他日期选择器中选择日期时如何禁用日期选择器中的日期

  2. 2

    如何限制用户基于Android中日期选择器中的其他日期设置日期

  3. 3

    引导日期选择器未禁用以前的日期

  4. 4

    重新打开对话框时,日期选择器对话框未显示所选日期

  5. 5

    如何在日期选择器对话框中设置最大日期和最小日期

  6. 6

    如何在Android的日期选择器对话框中显示所选日期的第二天日期?

  7. 7

    如何将Android中的日期选择器对话框设置为昨天的日期

  8. 8

    如何将Android中的日期选择器对话框设置为昨天的日期

  9. 9

    在Android的日期选择器对话框中显示当前日期

  10. 10

    如何从日期/时间选择器对话框中获取日期和时间并显示它?

  11. 11

    无法创建日期选择器对话框

  12. 12

    日期选择器对话框阴影的白色背景

  13. 13

    更改日期选择器对话框主题

  14. 14

    上次选择的日期未进入日期选择器对话框

  15. 15

    如何限制用户在日期选择器对话框中选择过去的日期

  16. 16

    日期选择器对话框无法在片段中工作

  17. 17

    线性布局扩展中的“显示日期选择器”对话框不活动

  18. 18

    同一对话框中的日期和时间选择器

  19. 19

    如何将日期和时间选择器放在android的对话框中

  20. 20

    我想使用数字日期选择器对话框和时间选择器对话框

  21. 21

    Android日期选择器对话框-日期格式为dd / MMM / yyyy

  22. 22

    车轮日期选择器对话框始终显示当前日期

  23. 23

    如何删除或禁用日期选择器或其他输入中先前选择的值?

  24. 24

    如何删除或禁用日期选择器或其他输入中先前选择的值?

  25. 25

    如何在日期选择器中显示所选日期?

  26. 26

    如何将在日期选择器中选择的日期传递给包含对话框片段的活动?

  27. 27

    如何选择最大日期小于其他日期的行?

  28. 28

    如何选择最大日期小于其他日期的行?

  29. 29

    日期选择器对话框显示在编辑文本上双击

热门标签

归档