2016-11-01 17 views
2

デバイスの言語に基づいてif文を作成しようとしています。例えばSwiftのデバイスの言語に基づく条件付きコード

:他 デバイスの言語が英語である場合には()他 デバイスの言語はスペイン語である場合には() デバイスの言語は、アラビア語など...() ある場合。

しかし、それを行う方法を理解することはできません。あなたは二つの部分を持っている

let language = NSLocale.preferredLanguages[0] 

if language.hasPrefix("en") { 
    //english 
} 
else if language.hasPrefix("ar") { 
    //arabic 
} 
+0

チェックアウトこの記事:http://stackoverflow.com/questions/29193284/check- language-in-ios-app ....ここでiOS言語コードを見つけることができます:http://www.ibabbleon.com/iOS-Language-Codes-ISO-639.html ... @alexburtnikは正しいですNSLocale.preferredLanguages。 – user3353890

答えて

4

+0

ありがとう、本当に感謝しています。 – RayX1993

1

あなたはNSLocalepreferredLanguages方法を使用することができます。最初の方法は、現在のロケールから現在の言語を取得することです。

スウィフト3:

let languageCode = Locale.current.languageCode 

2番目の部分は、それがどの言語をチェックすることです:

if let languageCode = Locale.current.languageCode { 
    switch languageCode { 
     case "en": 
      // handle English 
     case "es": 
      // handle Spanish 
     case "ar": 
      // handle Arabic 
     default: 
      // handle others 
    } 
} 
+0

これは、デバイスの言語を取得する正しい方法ではありません。 – rmaddy

+0

@rmaddyより良いソリューションを提供することは歓迎します); – alexburtnik

+0

@alexburtnikこれは完璧に動作します。ありがとうございます – RayX1993

関連する問題