Структуры моего приложения является FragmentTabHost
, который содержит Fragment
, внутри что Fragment
является ViewPager
, который позволяет пользователю прокручивать ребенок фрагменты.Android: SimpleDateFormat печатает дубликаты на несколько фрагментах
(FragmentTabHost -> Fragment -> ViewPager -> Fragment)
В конечном фрагменте должна отображаться дата обработки данных.
Вот код, я использую для создания даты:
String format = "MMMM F";
SimpleDateFormat formatter = new SimpleDateFormat(format);
formatter.setTimeZone(TimeZone.getTimeZone("UTC"));
String dateString = (formatter.format(item.getDate("date")) + suffixForDayInDate(item.getDate("date")));
Log.d("RAW DATE", item.getDate("date").toString());
Log.d("AFTER FORMATTING", formatter.format(item.getDate("date")));
Выход:
D/RAW DATE: Mon Mar 07 17:00:00 MST 2016
D/AFTER FORMATTING: March 2
D/RAW DATE: Sun Mar 06 17:00:00 MST 2016
D/AFTER FORMATTING: March 1
D/RAW DATE: Sat Mar 05 17:00:00 MST 2016
D/AFTER FORMATTING: March 1
D/RAW DATE: Fri Mar 04 17:00:00 MST 2016
D/AFTER FORMATTING: March 1
Скажите, пожалуйста, кто имеет ключ здесь.
Хорошо, так что вы ожидали? (И почему вы вызываете 'item.getDate (« дата ») четыре раза? Ваш код будет более ясным, если вы извлечете локальную переменную ...) –
Обратите внимание, что из-за использования UTC ваше первое значение эффективно во вторник 8 марта, который действительно является вторым вторником в марте, поэтому «2 марта». –
Это * также * непонятно, что все описание фрагмента связано с чем угодно. Вы действительно спрашиваете: «Почему SimpleDateFormat производит этот вывод для этого ввода?» или что-то другое? На данный момент весь вопрос непонятен. –