Ios 如何将应用程序语言保存在NSUserDefault Swift中?
我正在开发一个应用程序,它可以运行两种语言:英语和阿拉伯语。所以用户可以选择他想要的语言和应用程序显示在该语言 我使用Ios 如何将应用程序语言保存在NSUserDefault Swift中?,ios,swift,nsuserdefaults,Ios,Swift,Nsuserdefaults,我正在开发一个应用程序,它可以运行两种语言:英语和阿拉伯语。所以用户可以选择他想要的语言和应用程序显示在该语言 我使用本地化显示静态文本。我已经用英语和阿拉伯语创建了本地化字符串文件 现在,我想将用户选择的语言保存在NSUserDefaults中,并使用它实现本地化。我该怎么做呢?你喜欢吗 func isDeviceLanguageRTL() -> Bool { return (NSLocale.characterDirectionForLanguage(NSLocale.preferre
本地化
显示静态文本。我已经用英语和阿拉伯语创建了本地化字符串文件
现在,我想将用户选择的语言保存在NSUserDefaults
中,并使用它实现本地化。我该怎么做呢?你喜欢吗
func isDeviceLanguageRTL() -> Bool {
return (NSLocale.characterDirectionForLanguage(NSLocale.preferredLanguages()[0]) == .RightToLeft)
}
最初检查您的应用程序语言可能是阿拉伯语或英语
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
if self.isDeviceLanguageRTL()
{
// it is Arabic
}
}
按钮操作保存时的辅助操作
if let getlan = NSUserDefaults.standardUserDefaults().objectForKey("AppleLanguages") as? String {
if getlan == "En" {
//English
}
else {
//Arabic
}
}
为按钮设置标签,例如英语=0,阿拉伯语=1
好吧,假设你喜欢
func buttonTapped(sender: UIButton)
{
let userDefaults = NSUserDefaults.standardUserDefaults()
if sender.tag == 1
{
// english
userDefaults.setObject("En", forKey: "AppleLanguages")
} else
{
//arbaic
userDefaults.setObject("AR", forKey: "AppleLanguages")
}
}
检索
if let getlan = NSUserDefaults.standardUserDefaults().objectForKey("AppleLanguages") as? String {
if getlan == "En" {
//English
}
else {
//Arabic
}
}
实际上我有两个按钮。一个是英语,另一个是阿拉伯语。假设用户选择英语,我想把它保存在UserDefaults中。保存为UserDefault时是否有任何特定的语言键?事实上,我对Swift还不熟悉,所以我对基础知识了解不多。如果你能帮我,那就太好了