Java 使用timepickerdialog选择的时间错误

Java 使用timepickerdialog选择的时间错误,java,android,timepickerdialog,Java,Android,Timepickerdialog,我使用下面的代码从用户那里获取时间。一切正常,除非用户在24小时格式视图中选择15,最终输出在凌晨3点出现,反之亦然。我读了很多博客,但没有得到明确的解决方案排序。有人能帮忙吗。 代码如下: final TimePickerDialog.OnTimeSetListener tf = new TimePickerDialog.OnTimeSetListener() { @Override public void onTimeSet(TimePicker timePi

我使用下面的代码从用户那里获取时间。一切正常,除非用户在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点,反之亦然。

使用一天中的小时

 new TimePickerDialog(HireActivity.this, tf,
           calendar.get(Calendar.HOUR_OF_DAY), calendar.get(Calendar.MINUTE), true).show();
使用一天中的小时

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

完美的谢谢你。谢谢