0
我有一個24小時格式化的時間字符串,如13:30,當用戶的語言環境使用AM/PM時,我必須將其轉換爲12h時間格式字符串。我怎樣才能可靠地檢測到?如何以編程方式確定當前語言環境是否使用AM/PM或24h格式的時間?
我有一個24小時格式化的時間字符串,如13:30,當用戶的語言環境使用AM/PM時,我必須將其轉換爲12h時間格式字符串。我怎樣才能可靠地檢測到?如何以編程方式確定當前語言環境是否使用AM/PM或24h格式的時間?
有幾種方法。在這裏看到我的問題Detect iPhone 24-Hour time setting 基本上你設定了一個時間,並檢查上午或下午的字符串
這不僅僅是語言環境。無論區域設置如何,用戶都可以選擇在「常規」,「日期和時間」下的「設置」應用中使用24小時(或不使用)。 – rmaddy
你試過[NSLocale currentLocale]還是[NSLocale systemLocale]? – tttthomasssss
@rmaddy是正確的。如果語言環境是單向的,並且Settings值是另一種方式,那麼您可以獲得一點信息,而且我不確定是否有一種好的方法來測試這種情況,而不是格式化某些內容並查看它的結果。請注意,設置值甚至會覆蓋NSDateFormat格式字符串中顯式的「hh」/「HH」表示法。 –