1

我正在使用此链接Android TimePickerDialog set max timeandroid:TimePickerDialog防止用户选择过去的时间,并可以选择新日期的未来时间

我是android新手。在此代码的帮助下,我无法选择过去的时间,但我们无法选择未来的时间。在timepickerdialog模式中选择12时,会根据第二天而不是过去一天自动更改为am。

+0

我在问先生。 –

+0

我是android新手。我正在完成这项任务。 –

+0

首先阅读此链接http://stackoverflow.com/help/how-to-ask。在目前的情况下,你完全不清楚你想要完成什么以及你的问题是什么。所以首先根据链接编辑你的问题,并使其更加清晰和精确 –

回答

2

试试这个代码:

TimePickerFragment timePickerFragment = new TimePickerFragment(); 
      timePickerFragment.setOnTimeSetListener(new OnTimeSetListener() { 
       public void onTimeSet(TimePicker view, int hourOfDay, int minute) { 
        Calendar datetime = Calendar.getInstance(); 
        Calendar c = Calendar.getInstance(); 
        datetime.set(Calendar.HOUR_OF_DAY, hourOfDay); 
        datetime.set(Calendar.MINUTE, minute); 
        if (datetime.getTimeInMillis() >= c.getTimeInMillis()) { 
         //it's after current 
         int hour = hourOfDay % 12; 
        btnPickStartTime.setText(String.format("%02d:%02d %s", hour == 0 ? 12 : hour, 
          minute, hourOfDay < 12 ? "am" : "pm")); 
        } else { 
         //it's before current' 
         Toast.makeText(getApplicationContext(), "Invalid Time", Toast.LENGTH_LONG).show(); 
        } 
       } 
      }); 
      timePickerFragment.show(getSupportFragmentManager(), "TIME"); 

,它会显示在对话框timepicker,如果用户选择当前时间之前的任何时候......它会显示无效的时间..

+0

感谢它的工作.. –

+0

高兴地帮助.. – rafsanahmad007

1

最适合你的解决方案使用this材料设计库来选择时间或日期并设置最小值。

TimePickerDialog tpd = TimePickerDialog.newInstance(
     new TimePickerDialog.OnTimeSetListener() { 
      @Override 
      public void onTimeSet(TimePickerDialog view, int hourOfDay, int minute, int second) { 
       //put some interesting code 
      } 
     }, 
     now.get(Calendar.HOUR_OF_DAY), 
     now.get(Calendar.MINUTE), 
     true 
    ); 
    tpd.setMinTime(10, 0, 0); // MIN: hours, minute, secconds 
    tpd.show(getFragmentManager(), "TimePickerDialog"); 

到材质的DateTime选取器库添加到您的项目最简单的方法是将它作为一个依赖于你的build.gradle

dependencies { 
    compile 'com.wdullaer:materialdatetimepicker:3.0.0' 
} 

希望这会帮助你。

相关问题