gpt4 book ai didi

ios - 我可以将我的 iOS 应用程序本地化为西类牙语或德语,同时保留手机的其余部分为英语吗?

转载 作者:行者123 更新时间:2023-11-30 11:17:29 26 4
gpt4 key购买 nike

用户希望将我们的 iOS 应用语言设置与用户的 iPhone 语言完全分开。基本上,在应用程序本身内部,用户选择应用程序的语言,然后应用程序的 UI 和文本全部更改为所选语言。这比苹果的本地化标准更灵活,而且他们没有解决这种情况。对于如何实现这一目标,是否存在一些商定的最佳实践?

具体来说,用户可能希望应用程序的界面为西类牙语,但手机的其余部分仍为英语。

谢谢!

最佳答案

像在 iOS 中进行默认本地化一样创建 Localized.strings。然后使用此代码在应用程序中实现语言切换。

extension String {

func localized() -> String {

let selectedLanguage = UserDefaults.standard.string(forKey:) CURRENT_LANGUAGE)

guard let path = Bundle.main.path(forResource: selectedLanguage == "en" ? "Base" : selectedLanguage, ofType: "lproj") else {

if let basePath = Bundle.main.path(forResource: "Base", ofType: "lproj"){

return Bundle(path: basePath)?.localizedString(forKey: self, value: "", table: nil) ?? self
}

return self
}

return Bundle(path: path)?.localizedString(forKey: self, value: "", table: nil) ?? self


}
}

您可以通过调用 let text = "LOGIN_SCREEN_TITLE".localized() 来访问本地化字符串,其中 LOGIN_SCREEN_TITLE 已添加到本地化文件中.

enum LanguagesSupported: String {

case English = "en"
case French = "fr"
}

UserDefaults.standard.set(LanguagesSupported.French.rawValue, forKey: CURRENT_LANGUAGE)

关于ios - 我可以将我的 iOS 应用程序本地化为西类牙语或德语,同时保留手机的其余部分为英语吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51605315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com