抱歉我的英文。我需要在00:00:00到06:00:00之间设置时间,但我的代码不起作用。我正在使用joda
库。我的下面的方法不起作用,我可以设置时间14:00或另一个,而不是beetwen 00:00和6:00。我做错了什么?
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 :(得分:0)
使用mHour和mMinute查看here,您将在6:00:00之前的几小时内从DatePicker中删除;从这里链接复制是问题:
public TimePickerDialog (Context context, int themeResId,
TimePickerDialog.OnTimeSetListener listener, int hourOfDay, int
minute, boolean is24HourView)
在API级别1中添加使用。创建新的时间选择器对话框 指定的主题。
参数:
- 上下文父上下文
- themeResId要应用于此对话框的主题的资源ID
- 侦听器在设置时间时调用侦听器
- hourOfDay the initial hour
- 分钟初始分钟
- is24HourView无论是24小时视图还是上午/下午。
这里是,如果你想要你的选择器中的所有小时和分钟,请留下t 0和0
编辑:
如果您只想在0到6之间设置时间,请查看this post