テクノモンキーのアプリ開発日記

テクノモンキーの開発ブログです。iOS、Android、Unity、Cocos2d-xなどアプリ開発関連のTipsやアプリ開発に役立つ情報を発信します。

【iOSアプリ開発】コードで端末の言語設定を取得して日本語かそれ以外かで処理を分ける方法

https://i-cdn.phonearena.com/images/article/100355-image/Bizarre-chapter-in-Apple-iPhone-history-ends-with-iOS-11.2-update.jpg



iOSアプリで端末の言語設定を取得して、日本語か、それ以外かで処理を分ける方法についてのメモ。


端末の言語設定を取得する

まず、端末で優先されている言語を取得するには、「Locale.preferredLanguages.first」を使います。

preferredLanguages - Locale | Apple Developer Documentation

//iPhoneで優先している言語を取得
let prefLang = Locale.preferredLanguages.first


端末の言語設定が日本語かそれ以外かを判別する

上記を応用して、使っているiPhoneの言語設定が日本語なのかそれ以外なのかを判別するには以下のような感じです。


//使っているiPhoneの言語設定が日本語なのか判別する

func isJapanese() -> Bool {
        let prefLang = Locale.preferredLanguages.first
        if prefLang!.hasPrefix("ja"){
            return true
        }else{
            return false
        }
}


参考:

【Swift 3】端末の表示言語を読み取り、言語ごとに分岐する方法まとめ【iOS】 - DAIKI MOCHIZUKIDAIKI MOCHIZUKI