Android 将onTimeSet对话框后的TextView设置为HH:mm[已发布解决方案]

Android 将onTimeSet对话框后的TextView设置为HH:mm[已发布解决方案],android,timepicker,android-timepicker,Android,Timepicker,Android Timepicker,因此,我尝试寻找方法来获取TimePicker对话框的输出,将TextView设置为HH:mm AM/PM(ex:8:00 AM)。我知道那里有很多东西,但我找不到合适的。我接受了让我接近的答案(从:向法拉兹·艾哈迈德大声呼喊),并在其中添加了我自己的“旋转”。只是发帖希望它能帮助处于同样情况的人 下面将采用onTimeSet中的输入,并将其格式化为:HH:mm AM/PM inal Calendar myCalendar = Calendar.getInstance(); St

因此,我尝试寻找方法来获取TimePicker对话框的输出,将TextView设置为HH:mm AM/PM(ex:8:00 AM)。我知道那里有很多东西,但我找不到合适的。我接受了让我接近的答案(从:向法拉兹·艾哈迈德大声呼喊),并在其中添加了我自己的“旋转”。只是发帖希望它能帮助处于同样情况的人

下面将采用onTimeSet中的输入,并将其格式化为:HH:mm AM/PM

inal Calendar myCalendar = Calendar.getInstance();
        String am_pm = "";
        myCalendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
        myCalendar.set(Calendar.MINUTE, minute);
        if (myCalendar.get(Calendar.AM_PM) == Calendar.AM)
            am_pm = "AM";
        else if (myCalendar.get(Calendar.AM_PM) == Calendar.PM)
            am_pm = "PM";
        String strHrsToShow = (myCalendar.get(Calendar.HOUR) == 0) ? "12" : myCalendar.get(Calendar.HOUR) + "";
        //UIHelper.showLongToastInCenter(context, strHrsToShow + ":" + myCalendar.get(Calendar.MINUTE) + " " + am_pm);

        if (minute == 0) {
            String mZeroMinute = "00";
            mSessionEndTimeTV.setText(strHrsToShow + ":" + mZeroMinute + " " + am_pm);
        } else {
            mSessionEndTimeTV.setText(strHrsToShow + ":" + myCalendar.get(Calendar.MINUTE) + " " + am_pm);
请参见上文:

inal Calendar myCalendar = Calendar.getInstance();
        String am_pm = "";
        myCalendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
        myCalendar.set(Calendar.MINUTE, minute);
        if (myCalendar.get(Calendar.AM_PM) == Calendar.AM)
            am_pm = "AM";
        else if (myCalendar.get(Calendar.AM_PM) == Calendar.PM)
            am_pm = "PM";
        String strHrsToShow = (myCalendar.get(Calendar.HOUR) == 0) ? "12" : myCalendar.get(Calendar.HOUR) + "";
        //UIHelper.showLongToastInCenter(context, strHrsToShow + ":" + myCalendar.get(Calendar.MINUTE) + " " + am_pm);

        if (minute == 0) {
            String mZeroMinute = "00";
            mSessionEndTimeTV.setText(strHrsToShow + ":" + mZeroMinute + " " + am_pm);
        } else {
            mSessionEndTimeTV.setText(strHrsToShow + ":" + myCalendar.get(Calendar.MINUTE) + " " + am_pm);

另外,如果有更简单/干净的方法,请也发布,以便我们可以使用。谢谢。