2017-05-15 23 views
0

我想爲我的用戶顯示一個日期範圍。我需要爲只顯示區域端部的必要部分像這樣聰明,但本地化獨立的方法:Objective-C中相對日期範圍的優雅實現

2017-jan-1 to 2017-feb-22017-jan-1 to feb-2

2017-jan-1 to 2017-jan-22017-jan-1 to 2

2017-jan-1 to 2018-jan-22017-jan-1 to 2018-jan-2

我可以寫幾個if s來檢查組件是否相同,但然後我不得不手動編寫格式字符串,我不想要因爲其他本地化需要oth呃月/日訂單。

是否有類似於doesRelativeDateFormatting的系統API或者CocoaPods庫?你會怎麼做?

回答

1

NSDateFormatter方法+dateFormatFromTemplate:options:locale:解決了您認爲您的方法失敗的問題。給定一個模板,指定您希望包含的日期的各個部分; Apple使用的例子是日期名稱,日期和月份;它會爲語言環境和用戶首選項返回適當的格式字符串。

HTH

+0

在'template'應指定的確切格式(包括該punctation並序)日期字符串的,還是我錯過了什麼? – gklka

+0

您遺漏了一些東西,查看方法描述中的示例,並按照格式指南的鏈接。 – CRD