获取 iDevice 系统语言以发出 IF

Get the iDevice system language to issue an IF

我正在尝试从用户的 iDevice 获取系统语言,基本上我想要一张图片,如果是法语,如果是英语,则需要另一张

有什么想法吗?

我的代码(无论如何都不显示图像)

let preferredLanguage = NSLocale.preferredLanguages()[0] as String

if preferredLanguage == "en" {
    navigationItem.titleView = imageView
} else if preferredLanguage == "fr" {
    navigationItem.titleView = imageViewFR
}

事实证明@rmaddy 是对的,这是答案

    let preferredLanguage = NSLocale.currentLocale().objectForKey(NSLocaleLanguageCode) as! String

    if preferredLanguage == "fr" {
        navigationItem.titleView = imageViewFR
    } else {
        navigationItem.titleView = imageView
    }

要获得系统语言,我们需要使用 NSLocale.currentLocale() 然后它起作用了!谢谢@rmaddy

您不需要为了本地化图像而编写(容易出错)。只需将图像文件放入应用程序包中相应的本地化文件夹中——然后 NSBundle.pathForResourceUIImage(named:) 等 API 将自动加载与用户首选语言相对应的图像。 (如果不同语言的图像具有不同的尺寸,则不需要单独的图像视图 — 只需使用自动布局即可。)

请参阅 Apple 文档中的 Localized Resources in Bundles and Adding Additional Resources You Want to Localize