以 hh:mm 格式显示时间选择器
Show the time picker in hh:mm format
我必须在单击编辑 text.So 时以 hh:mm 格式显示时间选择器,我使用了以下代码。
MainActivity.java:
e6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm");
Calendar mcurrentTime = Calendar.getInstance();
int hour = mcurrentTime.get(Calendar.HOUR_OF_DAY);
int minute = mcurrentTime.get(Calendar.MINUTE);
TimePickerDialog mTimePicker;
mTimePicker = new TimePickerDialog(AddFlight.this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int selectedHour, int selectedMinute) {
e6.setText(selectedHour + ":" + selectedMinute);
}
}, hour, minute, true);//Yes 24 hour time
mTimePicker.setTitle("Select Time");
mTimePicker.show();
}
});
它运行良好并显示时间 picker.But 我的 问题 是,当我在时间选择器中 select 04:15 时,它显示4:15。在4.I需要以hh:mm格式显示时间选择器之前不包括0。
任何人都可以帮助我 this.Thank 你。
你可以这样试试...
mTimePicker = new TimePickerDialog(AddFlight.this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int selectedHour, int selectedMinute) {
String formattedTime = "";
String sHour = "00";
// converting hour to tow digit if its between 0 to 9. (e.g. 7 to 07)
if(selectedHour < 10)
sHour = "0"+selectedHour;
else
sHour = String.valueOf(selectedHour);
e6.setText(sHour + ":" + selectedMinute);
}
}, hour, minute, true);
刚才我提到了这个post并更改了单行:
这一行
e6.setText(selectedHour + ":" + selectedMinute);
至
e6.setText(String.format("%02d:%02d", selectedHour,
selectedMinute));
就用这个方法,
private String getDD(int num) {
return num > 9 ? "" + num : "0" + num;
}
只需将文本设置为“%02d:%02d”,如下所示:
e6.setText(String.format("%02d:%02d", selectedHour, selectedMinute));
希望这对您有所帮助
我必须在单击编辑 text.So 时以 hh:mm 格式显示时间选择器,我使用了以下代码。
MainActivity.java:
e6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm");
Calendar mcurrentTime = Calendar.getInstance();
int hour = mcurrentTime.get(Calendar.HOUR_OF_DAY);
int minute = mcurrentTime.get(Calendar.MINUTE);
TimePickerDialog mTimePicker;
mTimePicker = new TimePickerDialog(AddFlight.this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int selectedHour, int selectedMinute) {
e6.setText(selectedHour + ":" + selectedMinute);
}
}, hour, minute, true);//Yes 24 hour time
mTimePicker.setTitle("Select Time");
mTimePicker.show();
}
});
它运行良好并显示时间 picker.But 我的 问题 是,当我在时间选择器中 select 04:15 时,它显示4:15。在4.I需要以hh:mm格式显示时间选择器之前不包括0。
任何人都可以帮助我 this.Thank 你。
你可以这样试试...
mTimePicker = new TimePickerDialog(AddFlight.this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int selectedHour, int selectedMinute) {
String formattedTime = "";
String sHour = "00";
// converting hour to tow digit if its between 0 to 9. (e.g. 7 to 07)
if(selectedHour < 10)
sHour = "0"+selectedHour;
else
sHour = String.valueOf(selectedHour);
e6.setText(sHour + ":" + selectedMinute);
}
}, hour, minute, true);
刚才我提到了这个post并更改了单行:
这一行
e6.setText(selectedHour + ":" + selectedMinute);
至
e6.setText(String.format("%02d:%02d", selectedHour, selectedMinute));
就用这个方法,
private String getDD(int num) {
return num > 9 ? "" + num : "0" + num;
}
只需将文本设置为“%02d:%02d”,如下所示:
e6.setText(String.format("%02d:%02d", selectedHour, selectedMinute));
希望这对您有所帮助