我尝试使用Android TimePicker在我的代码中显示分钟的“两个数字”。但我还没有得到它......时间只以X:X格式显示。例如9:05将在我的应用9:5中显示。
有人可以帮我吗?
这是我的代码......
idtime.setText(new StringBuilder()
.append(String.valueOf(mHour)).append(":")
.append(String.valueOf(mMinute)).toString());
答案 0 :(得分:9)
示例:
假设您正在显示当前时间:
Date date = Calendar.getInstance().getTime();
SimpleDateFormat sdf = new SimpleDateFormat("HH:MM");
String output = sf.format(date).toString();
idtime.setText(output);
另一种更简单的零填充方法,您可以使用String.format
:
String output = String.format("%02d:%02d", mHour, mMinute);
idtime.setText(output);
答案 1 :(得分:1)
你可以这样做......
if (minute < 10) {
hour.setText(hour + ":0" + minute);
} else {
hour.setText(hour + ":" + minute);
}
在TimePicker内部
答案 2 :(得分:0)
public static String getDuration(long milliseconds) {
long sec = (milliseconds / 1000) % 60;
long min = (milliseconds / (60 * 1000))%60;
long hour = milliseconds / (60 * 60 * 1000);
String s = (sec < 10) ? "0" + sec : "" + sec;
String m = (min < 10) ? "0" + min : "" + min;
String h = "" + hour;
String time = "";
if(hour > 0) {
time = h + ":" + m + ":" + s;
} else {
time = m + ":" + s;
}
return time;
}
答案 3 :(得分:0)
您可以使用简单的格式化程序格式化日期,它将返回两位数的值
val formatter = SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
val date = formatter.parse(start)
var output = ""
val formatter1 = SimpleDateFormat("hh:mm")
output = formatter1.format(date)