#ios #swift #nsdatecomponentsformatter
Вопрос:
Я пытаюсь найти способ использовать Swift DateComponentsFormatter
с несколькими unitsStyle
свойствами, в зависимости от фактического компонента.
Например, я хотел бы использовать .abbreviated
свойство для дня и .brief
для других, создавая такие строки, как: 1d 9hr 22min
. Если бы я использовал .brief
все компоненты, я бы получил 1day 9hr 22min
. Если бы я использовал .abbreviated
, я бы получил 1d 9h 22m
.
Похоже, что комбинация, которую я хочу, невозможна, потому unitsStyle
что это свойство форматера. Но кто-нибудь знает, могу ли я сделать более сложную конфигурацию? Или мне придется создать несколько DateComponentsFormatter
s?
(Я хочу использовать DateComponentsFormatter
, чтобы получить локализацию единиц времени. Таким образом, любые альтернативные форматы также должны были бы поддерживать локализацию из коробки, а не иметь локализованные строки форматирования.)
Комментарии:
1. Два форматера, один для дня и один для часа и минут с разными стилями, а затем вы сами объединяете строки в один
2. @JoakimDanielson для английского языка это должно быть легко, но если OP хочет поддерживать разные языки, это не так просто
3. @LeoDabus Вы имеете в виду, потому что порядок может быть другим? Я не учел этого, и да, в любом случае это обходной путь/взлом.