2015-08-28 103 views
0

对不起,我的英语。我需要在00:00:00和06:00:00之间设置时间,但我的代码无法使用。我正在使用joda库。我下面的方法不起作用,我可以设置时间14:00或其他时间,而不是00:00和6:00。我做错了什么?无法设置beetwen时间(安卓)

public void setTime(final TextView setText) { 
     String dateStart = "00:00:00"; 
     String dateStop = "06:00:00"; 
     SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss"); 

     Date d1 = null; 
     Date d2 = null; 

     try { 
      d1 = format.parse(dateStart); 
      d2 = format.parse(dateStop); 

      DateTime dt1 = new DateTime(d1); 
      DateTime dt2 = new DateTime(d2); 

      int mHour = Hours.hoursBetween(dt1, dt2).getHours() % 24; 
      int mMinute = Minutes.minutesBetween(dt1, dt2).getMinutes() % 60; 

      TimePickerDialog tpd = new TimePickerDialog(context, 
        new TimePickerDialog.OnTimeSetListener() { 

         @Override 
         public void onTimeSet(TimePicker view, int hourOfDay, 
               int minute) { 

          setText.setText(String.valueOf(hourOfDay) + ":" + String.valueOf(minute)); 
         } 

        }, mHour, mMinute, true); 
      tpd.show(); 
     }catch(Exception e) { 
      Toast.makeText(getApplicationContext(), "Cant open time, sorry", Toast.LENGTH_SHORT).show(); 
      Log.e("Time error", e.toString()); 
     } 
    } 

回答

0

看一看here,与mHour和mMinute,你是从的DatePicker 6:00:00之前的时间取出;从这里复制链接的问题是:

public TimePickerDialog (Context context, int themeResId, 
TimePickerDialog.OnTimeSetListener listener, int hourOfDay, int 
minute, boolean is24HourView) 

在API级别1创建具有 指定的主题新的时间选择对话框。

参数:

  • 上下文中的父上下文
  • themeResId主题的资源ID应用到该对话框
  • 听众听众打电话到时设置
  • HOUROFDAY初始小时
  • 分钟最初的分钟
  • is24HourView无论是24小时制还是AM/PM。

这里是,让他们在t 0和0,如果你想在你的选择器的所有小时和分钟

编辑:

如果你只想0-6设定时间

,看看this post