我的应用程序中有一个Time选择器,设置为24h格式。这是我班上的代码:
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final Calendar c = Calendar.getInstance();
//Bundle args = getArguments();
SharedPreferences preferences = getActivity().getSharedPreferences(PREFS_FILE_NAME, Context.MODE_PRIVATE);
int hourOfTheDay = preferences.getInt("TEST_TIME_OF_DAY_HOUR", 10);
int minuteOfTheDay = preferences.getInt("TEST_TIME_OF_DAY_HOUR", 0);
// TODO: bug in time picker --> needs hour to be set again after is24HourFormat
// see here: https://stackoverflow.com/questions/15150430/android-timepicker-setis24hourview-not-working
// tried solution but method not available
TimePickerDialog timePickerDialog = new TimePickerDialog(getActivity(), this, hourOfTheDay, minuteOfTheDay,
DateFormat.is24HourFormat(getActivity()));
return timePickerDialog;
}
正如你所看到的,我指的是24小时的时间格式,我在10小时内作为小时。然而,选择器显示指示22:00而不是10:00。我在这里发现了一些信息,说它可能是一个bug Android: TimePicker setIs24HourView not working,但是我使用的类是TimePickerDialog,并且没有一个允许我按照解决方案中的建议单独设置时间的方法({{3} })。
现在是我的下午(实际上是晚上)。我使用的模拟器的时间设置为24h。之前,我把它设置为上午/下午,上面的相同代码将时间选择器调到上午10点......
我想要实现的是:时间选择器具有24小时格式,并在10:00启动(如早晨时间)。
我不确定这是一个错误或我做错了什么。