我希望使用TimePicker显示 24小时时钟而不是 12小时,而我不需要AM / PM按钮,只需要显示24小时制。
这可能吗?
我使用了setIs24HourView(true)
,但它无效。
建议我如何显示24小时制?
答案 0 :(得分:13)
Have you tried setting setIs24HourView?
如果您只需要以其他异常方式使用NumberPicker小部件:
Android中有一个NumberPicker小部件,但它是一个私有API。 This guy pulled out the code,以便您可以将其放入任何项目中。
Here is an example of how I used it for tax rates:
答案 1 :(得分:6)
我遇到了同样的问题但是通过setIs24HourView
调用活动中的onCreate
解决了这个问题。
答案 2 :(得分:1)
您必须调用setIs24HourView函数并为此发送true 当时间选择器处于24模式时,AM / PM将消失。
TimePicker tpHourMin = (TimePicker) findViewById(R.id.timePicker);
tpHourMin.setIs24HourView(true);
答案 3 :(得分:0)
您可以覆盖
public void onTimeChanged (TimePicker view, int hourOfDay, int minute)
method of TimePickerDialog to completely remove AM/PM:
class MyTimePickerDialog extends TimePickerDialog {
MyTimePickerDialog(Context context, TimePickerDialog.OnTimeSetListener callBack, int hourOfDay, int minute, boolean is24HourView) {
super(context, callBack, hourOfDay, minute, is24HourView);
}
@Override
public void onTimeChanged (TimePicker view, int hourOfDay, int minute) {
// to prevent the dialog from changing the title which by default contains AM/PM
}
}
以下是如何使用它
MyTimePickerDialog dialog = new MyTimePickerDialog(getActivity(), this, hour, minute,
true /*DateFormat.is24HourFormat(getActivity())*/);
dialog.setTitle("Set Time");