我有一个带有自定义单元格的tableview。每个对象都由几个对象组成:按钮和文本。我在本地化按钮的内容时遇到一些问题。我有定义了键和翻译文本的.strings文件,例如
START="Start";
呼唤
cell.startButton.setTitle(NSLocalizedString("START", comment: ""), forState: .Normal)
因此,为什么没有“开始”作为文本按钮,却有了“开始”,为什么?当然,该文本未本地化,因为我总是读“开始”。
编辑:我准备了一个显示相同行为的测试应用程序。下载链接在这里有人可以帮忙吗?
EDIT2:我发现必须将字符串文件称为错误:“ Localizable.strings”,我不知道...
字符串文件的正确语法为:
"id" = "localized message";
在您的情况下,您必须编写:
"START" = "Start";
而您省略了标识符中的双引号:
START = "Start"; // This is wrong
旁注:如果您要进行很多本地化,建议您添加以下字符串扩展名:
extension String {
var localized: String {
return NSLocalizedString(self, comment: "")
}
}
那么您可以简化本地化工作:
cell.startButton.setTitle("START".localized, forState: .Normal)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句