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



所以我尝试寻找方法来获得TimePicker对话框的输出,以将TextView设置为HH:mm AM/PM(例如:8:00 AM)。我知道外面有东西,但我找不到合适的。我接受了让我接近的答案(从这个问题中向Faraz Ahmed大喊:并添加了我自己的"旋转"。只是发帖希望它能帮助处于同样情况的人。

下面将采用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);

相关内容

最新更新