我使用以下代码格式化输出:
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.SHORT);
Date date = new Date(cursor.getLong(cursor.getColumnIndex(MyContentProvider.KEY_TIME_START)));
TextView textView = (TextView) view.findViewById(R.id.column_time_start);
textView.setText(df.format(date));
例如德语我希望当地的24小时时间格式。
使用Android 4(例如4.4.2),时间可以按预期完成。
但是对于Android 5(例如5.1),时间格式为12小时格式。
有人知道这个问题的好方法吗?
答案 0 :(得分:3)
使用DateFormat.getDateTimeInstance(int, int, Locale)
:
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.SHORT, Locale.getDefault());
String formattedDate = dateFormat .format(new Date());
如果这不适合你,请尝试这样的事情:
Locale current = getResources().getConfiguration().locale;
// Find out what the current locale is and format your date based on that