BFLocalizedUtil.swift 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. //
  2. // BFLocalizedUtil.swift
  3. // BFCommonKit
  4. //
  5. // Created by ak on 2022/1/18.
  6. //
  7. import Foundation
  8. public let BFLocalizedUtilAppLanguageKey:String = "AppLanguage"
  9. public class BFLocalizedUtil{
  10. /// 取到当前的系统设置的首选语言 zh 中文, en 英语 ,ja 日语, vi 越南语 ,ko 韩语
  11. /// - Returns: 首选语言
  12. public class func currentLanguage() -> String{
  13. let appLanguages:Array? = UserDefaults.standard.object(forKey: "AppleLanguages") as? Array<String>
  14. var language = (appLanguages?[0] ?? "en") as String
  15. // zh 中文, en 英语 ,ja 日语, vi 越南语 ,ko 韩语
  16. if(language.contains("zh")){
  17. language = "zh"
  18. }
  19. if(language.contains("en")){
  20. language = "en"
  21. }
  22. if(language.contains("ja")){
  23. language = "ja"
  24. }
  25. if(language.contains("vi")){
  26. language = "vi"
  27. }
  28. if(language.contains("ko")){
  29. language = "ko"
  30. }
  31. BFLog(2, message: "当前设置的首选语言\(language)")
  32. return language
  33. }
  34. public class func setLanguage(language:String){
  35. BFLog(2, message: "当前设置的首选语言\(language)")
  36. saveUserDefaults(key: BFLocalizedUtilAppLanguageKey, value: language)
  37. }
  38. public class func availableLocales() -> Array<String>{
  39. var codes = Array<String>.init()
  40. for code in NSLocale.availableLocaleIdentifiers{
  41. BFLog(2, message: "支持的语言 \(code)")
  42. codes.append(code)
  43. }
  44. return codes
  45. }
  46. }