Ios 带所有格的快速本地化

Ios 带所有格的快速本地化,ios,swift,localization,locale,Ios,Swift,Localization,Locale,我正在Swift中尝试本地化。在我不得不处理占有欲之前,这是非常简单的 假设我有以下英语短语: 卡罗尔的车是红色的。 Kris的车是红色的。 在法语中,它们是 La voiture de Carol est ruge La voiture de Kris est ruge 如何设置我的Localizable.strings(法语)文件?我想象它是这样的: “key”=“La voiture de%@est ruge” 但这实际上不起作用。是的,您可以用所需的值替换文本。我刚刚使用了你们的问题流,

我正在Swift中尝试本地化。在我不得不处理占有欲之前,这是非常简单的

假设我有以下英语短语:

卡罗尔的车是红色的。
Kris的车是红色的。

在法语中,它们是

La voiture de Carol est ruge
La voiture de Kris est ruge

如何设置我的
Localizable.strings(法语)
文件?我想象它是这样的:

“key”=“La voiture de%@est ruge”


但这实际上不起作用。

是的,您可以用所需的值替换文本。我刚刚使用了你们的问题流,所以答案是一样的

首先创建本地化字符串,如下所示:

"key" = "La voiture de #name# est rouge";
然后,当您需要字符串时。i、 e

let strFrench = Localizable.strings(French)
strings(法语),这是您假设的,所以我写了这个

现在用动态值替换名称,如下所示:

let str = strFrench.replacingOccurrences(of: “#name#”, with: “YourString”)

我希望这对你有用。对不起,我的英语不好。

是的,您可以用所需的值替换文本。我刚刚使用了你们的问题流,所以答案是一样的

首先创建本地化字符串,如下所示:

"key" = "La voiture de #name# est rouge";
然后,当您需要字符串时。i、 e

let strFrench = Localizable.strings(French)
strings(法语),这是您假设的,所以我写了这个

现在用动态值替换名称,如下所示:

let str = strFrench.replacingOccurrences(of: “#name#”, with: “YourString”)
我希望这对你有用。对不起,我的英语不好。

试试这个方法。。 首先,像下面这样全局声明语言包

var languageBundle:Bundle? 
然后为你的语言设定路径

if let path  = Bundle.main.path(forResource: "Fr", ofType: "lproj") {
languageBundle =  Bundle(path: path)
} else {
languageBundle = Bundle(path: Bundle.main.path(forResource: "Base", ofType: "lproj")!)
}
然后将密钥名称指定给标签

labelTerms.text = ((languageBundle?.localizedString(forKey: "labelAcceptTerms", value: "", table: nil) as String!))
就这些

在继续之前,请确认您遵循了以下创建本地化字符串文件的步骤

选择项目->选择使用基本国际化->添加语言->转到情节提要并添加复选框(添加了新语言)->添加本地化的字符串文件.string->添加其中的字符串列表-->使用关键字名称.localizedString(forKey:“addyourkeyname”

尝试此方法。。 首先,像下面这样全局声明语言包

var languageBundle:Bundle? 
然后为你的语言设定路径

if let path  = Bundle.main.path(forResource: "Fr", ofType: "lproj") {
languageBundle =  Bundle(path: path)
} else {
languageBundle = Bundle(path: Bundle.main.path(forResource: "Base", ofType: "lproj")!)
}
然后将密钥名称指定给标签

labelTerms.text = ((languageBundle?.localizedString(forKey: "labelAcceptTerms", value: "", table: nil) as String!))
就这些

在继续之前,请确认您遵循了以下创建本地化字符串文件的步骤


选择项目->选择使用基本国际化->添加语言->转到情节提要并添加复选框(添加了新语言)->添加本地化的字符串文件.string->添加其中的字符串列表-->使用键名.localizedString(forKey:“addyourkeyname”

什么“不起作用”?您是否使用NSLocalizedString和String.localizedStringWithFormat?–我假设真正的问题不是法语而是英语,在这里您必须附加
'
's
。抱歉,让我们忘记英语部分。我正在寻找一种方法来定义我的
字符串
文件中的一些动态内容。我想
Carol
Kris
到我的本地化字符串中。例如,请参阅。您是否找到了解决问题的好方法?到底什么“不起作用”?您是否使用NSLocalizedString和String.localizedStringWithFormat?–我假设真正的问题不是法语而是英语,在这里您必须附加
'
's
。抱歉,让我们忘记英语部分。我正在寻找一种方法来定义我的
字符串
文件中的一些动态内容。我想
Carol
Kris
到我的本地化字符串中。例如,请参阅。您是否找到解决问题的好方法?