12 小时制时间选择器 android
12 hour format timepicker android
我有一个工作正常的时间选择器。但它是 24 小时格式。我希望它采用 12 小时格式。我找不到可能的解决方案。我当前的代码片段是:
Calendar mcurrentTime = Calendar.getInstance();
final int hour = mcurrentTime.get(Calendar.HOUR_OF_DAY);
int minute = mcurrentTime.get(Calendar.MINUTE);
TimePickerDialog mTimePicker;
mTimePicker = new TimePickerDialog(AddJob.this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int selectedHour, int selectedMinute) {
////
}
}, hour, minute, true);
mTimePicker.setTitle("Select Time");
mTimePicker.show();
提前致谢。
编辑:
我可以在日期 selection 之后查看子午线。但我希望用户 select 子午线。
更新: android 问题如何与 javascript 问题重复?有人对此投了反对票..!
private TimePickerDialog.OnTimeSetListener mTimeSetListener =
new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
hour = hourOfDay;
minutes = minute;
String timeSet = "";
if (hour > 12) {
hour -= 12;
timeSet = "PM";
} else if (hour == 0) {
hour += 12;
timeSet = "AM";
} else if (hour == 12){
timeSet = "PM";
}else{
timeSet = "AM";
}
String min = "";
if (minutes < 10)
min = "0" + minutes ;
else
min = String.valueOf(minutes);
String mTime = new StringBuilder().append(hour).append(':')
.append(min ).append(" ").append(timeSet).toString();
}
};
你必须像下面那样做试试这个。
private TimePickerDialog.OnTimeSetListener mTimeSetListener =
new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
hour = hourOfDay;
minutes = minute;
String timeSet = "";
if (hour > 12) {
hour -= 12;
timeSet = "PM";
} else if (hour == 0) {
hour += 12;
timeSet = "AM";
} else if (hour == 12){
timeSet = "PM";
}else{
timeSet = "AM";
}
String min = "";
if (minutes < 10)
min = "0" + minutes ;
else
min = String.valueOf(minutes);
String aTime = new StringBuilder().append(hour).append(':')
.append(min ).append(" ").append(timeSet).toString();
et1.setText(aTime);
}
};
更改您的 TimePickerDialog
通话:
您的密码是:
mTimePicker = new TimePickerDialog(AddJob.this,
new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker,
int selectedHour, int selectedMinute) {
////
}
}, hour, minute, true);
将最后一个参数从 true 更改为 false
因为 TimePickerDialog
构造函数语法是:
TimePickerDialog(Context context,
TimePickerDialog.OnTimeSetListener listener,
int hourOfDay,
int minute,
boolean is24HourView)
注意:最后一个参数是boolean is24HourView
所以改成false你的问题就解决了
更多详情,请查看TimePickerDialog Documentation
希望对您有所帮助!!!
我有一个工作正常的时间选择器。但它是 24 小时格式。我希望它采用 12 小时格式。我找不到可能的解决方案。我当前的代码片段是:
Calendar mcurrentTime = Calendar.getInstance();
final int hour = mcurrentTime.get(Calendar.HOUR_OF_DAY);
int minute = mcurrentTime.get(Calendar.MINUTE);
TimePickerDialog mTimePicker;
mTimePicker = new TimePickerDialog(AddJob.this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int selectedHour, int selectedMinute) {
////
}
}, hour, minute, true);
mTimePicker.setTitle("Select Time");
mTimePicker.show();
提前致谢。
编辑: 我可以在日期 selection 之后查看子午线。但我希望用户 select 子午线。
更新: android 问题如何与 javascript 问题重复?有人对此投了反对票..!
private TimePickerDialog.OnTimeSetListener mTimeSetListener =
new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
hour = hourOfDay;
minutes = minute;
String timeSet = "";
if (hour > 12) {
hour -= 12;
timeSet = "PM";
} else if (hour == 0) {
hour += 12;
timeSet = "AM";
} else if (hour == 12){
timeSet = "PM";
}else{
timeSet = "AM";
}
String min = "";
if (minutes < 10)
min = "0" + minutes ;
else
min = String.valueOf(minutes);
String mTime = new StringBuilder().append(hour).append(':')
.append(min ).append(" ").append(timeSet).toString();
}
};
你必须像下面那样做试试这个。
private TimePickerDialog.OnTimeSetListener mTimeSetListener =
new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
// TODO Auto-generated method stub
hour = hourOfDay;
minutes = minute;
String timeSet = "";
if (hour > 12) {
hour -= 12;
timeSet = "PM";
} else if (hour == 0) {
hour += 12;
timeSet = "AM";
} else if (hour == 12){
timeSet = "PM";
}else{
timeSet = "AM";
}
String min = "";
if (minutes < 10)
min = "0" + minutes ;
else
min = String.valueOf(minutes);
String aTime = new StringBuilder().append(hour).append(':')
.append(min ).append(" ").append(timeSet).toString();
et1.setText(aTime);
}
};
更改您的 TimePickerDialog
通话:
您的密码是:
mTimePicker = new TimePickerDialog(AddJob.this,
new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker,
int selectedHour, int selectedMinute) {
////
}
}, hour, minute, true);
将最后一个参数从 true 更改为 false
因为 TimePickerDialog
构造函数语法是:
TimePickerDialog(Context context,
TimePickerDialog.OnTimeSetListener listener,
int hourOfDay,
int minute,
boolean is24HourView)
注意:最后一个参数是boolean is24HourView 所以改成false你的问题就解决了
更多详情,请查看TimePickerDialog Documentation
希望对您有所帮助!!!