我想为日期选择器(微调器)添加一个上限。最长日期应为“今天”。我尝试添加此行代码,但随后我的应用崩溃了:

dpDate.setMaxDate(new Date().getTime());


这是完整的代码,有人可以看到什么地方吗? :)

 addToCal.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {

            final AlertDialog.Builder mBuilder = new AlertDialog.Builder(Activity4.this);
            View mView = getLayoutInflater().inflate(R.layout.dialog_add_call,null);



            final DatePicker dpDate = (DatePicker)findViewById(R.id.dpDate);
            dpDate.setMaxDate(new Date().getTime()); //this makes the app crash



            mBuilder.setView(mView);
            final AlertDialog dialog = mBuilder.create();


            dialog.show();

        }
    });

最佳答案

您必须在setMaxDate方法上添加onCreateDialog,如下所示

    @Override
    public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {

        DatePickerDialog dialog = new DatePickerDialog(getActivity(), R.style.DialogTheme,null,year,month,day);

        //set max date
        dialog.getDatePicker().setMaxDate(new Date().getTime());
    }

关于java - 设置最大日期(日期选择器),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57233882/

10-10 05:35
查看更多