Вы должны установить CFBundleDevelopmentRegion
в вашем Info.plist
на английский.
При этом, когда предпочтительный язык пользователя не поддерживается (в вашем случае это не английский и немецкий языки), будет использоваться язык разработки.
Я обычно использую глобальную функцию для переноса NSLocalizedString
, а также предоставляю запасной вариант, когда есть непереведенная немецкая фраза, и вы хотите, чтобы она возвращалась к английскому.
public func LS(_ key: String) -> String {
let value = NSLocalizedString(key, comment: "")
if value != key || NSLocale.preferredLanguages.first == "en" {
return value
}
// Fall back to en
guard
let path = Bundle.main.path(forResource: "en", ofType: "lproj"),
let bundle = Bundle(path: path)
else { return value }
return NSLocalizedString(key, bundle: bundle, comment: "")
}
Там больше о локализации, и я написал больше о , как работает резервный .