使用timepickerdialog选择了错误的时间

时间:2016-12-21 02:16:05

标签: java android timepickerdialog

我正在使用以下代码从用户那里获取时间。一切正常,除非用户在24小时格式视图中选择15,最终输出在凌晨3点,反之亦然。我阅读了很多博客,但没有得到明确的排序解决方案。有人可以帮忙吗 这是代码:

final TimePickerDialog.OnTimeSetListener tf = new TimePickerDialog.OnTimeSetListener() {
        @Override
        public void onTimeSet(TimePicker timePicker, int i, int i1) {
            calendar.set(Calendar.HOUR, i);
            calendar.set(Calendar.MINUTE, i1);
            String myFormat = "hh:mm a"; //In which you need put here
            SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);
            timefrom.setText(sdf.format(calendar.getTime()));
        }
    };

以下是点击时间设置的代码:

  timefrom.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                new TimePickerDialog(HireActivity.this, tf,
                        calendar.get(Calendar.HOUR), calendar.get(Calendar.MINUTE), true).show();
            }
        });

我尝试使用122小时视图格式,如果用户选择上午5点,最后输出为下午6点,反之亦然。

1 个答案:

答案 0 :(得分:0)

使用HOUR_OF_DAY

 new TimePickerDialog(HireActivity.this, tf,
           calendar.get(Calendar.HOUR_OF_DAY), calendar.get(Calendar.MINUTE), true).show();