投稿

ラベル(iOS8)が付いた投稿を表示しています

【iOS】iOS9でNSLocale preferredLanguagesの件

iOS9で下記のようにやると、iOS8までの値と違うのが却ってくる。 よくネットで見かける取得の方法 NSString * country = [[NSLocale preferredLanguages] objectAtIndex:0]; iOS8までだと「ja」「en」とかが取得できるが、 iOS9から 「jp-JP」とか地域?まで取得されてしまう。 もし、NSLocaleを使って「ja」だったらとかの処理を入れていた場合は、 iOS9から上手く動かないので注意したほうがよい。 実装例1) country = [country substringToIndex:2]; これでよいかと思ったが 中国語とか他の言語で2文字では無い場合はもっとひねりを加えてないと行けない 「zh-Hant-JP」とかでくるので、 最後の「-」以降は削除するようなコードを書けばよいかな。 もちろん「iOS9.0」が条件ですよ。