TimePicker to setText,简单的bug

OBX*_*OBX 0 android

从采摘过了一段时间TimePicker,我展示,使用setText(),但是,到目前为止一切正常,但问题是,如果让我选择05:09,我只得到显示5:9 PMTextView.我想念前面的零.但我需要这个

这是我使用的代码:

public void onTimeSet(TimePicker timePicker,int selectedHour, int selectedMinute) 
{
    Calendar calendar = Calendar.getInstance();
    calendar.set(Calendar.HOUR_OF_DAY, selectedHour);
    calendar.set(Calendar.MINUTE, selectedMinute);

    int c_hour,c_min;
    String format;
    c_hour=selectedHour;
    c_min=selectedMinute;

    if (c_hour == 0) {
          c_hour += 12;
          format = "AM";
    } 
    else if (c_hour == 12) {
          format = "PM";
    } 
    else if (c_hour > 12) {
          c_hour -= 12;
          format = "PM";
    } 
    else {
         format = "AM";
    }

TextView dimple = (TextView)findViewById(R.id.timeText);
dimple.setText(new StringBuilder().
            append(c_hour).append(" : ").append(c_min).append(" ").append(format));
Run Code Online (Sandbox Code Playgroud)

解决它的快速方法是什么?

Kri*_*a V 5

您可以通过添加前缀来获得时间.

String formatTime = String.format("%02d : %02d", hour, minute);

要么

Calendar cal = Calendar.getInstance();
        cal.set(Calendar.HOUR_OF_DAY, hour);
        cal.set(Calendar.MINUTE, minute);
        String formatTime = new SimpleDateFormat("hh:mm a").format(cal.getTime());
Run Code Online (Sandbox Code Playgroud)