我尝试本地化我的应用,但应用在遇到使用localizedStringWithFormat
的本地化字符串时崩溃。这是一个例子:
cell.productRangeLabel.text = String.localizedStringWithFormat(NSLocalizedString("Questions %s", comment: "Subtitle showing the number of questions on each pack"), product.info!.range)
在调试器(LLDB)中,product.info!.range
打印正确的字符串,如果我只打印NSLocalizedString,它会输出正确的转换(" Preguntas%s),但与localizedStringWithFormat结合使用时,它会给出我错了:
执行被中断,原因:EXC_BAD_ACCESS(代码= EXC_I386_GPFLT)。 该过程已返回到表达式评估之前的状态。
在本地化之前,该字符串工作正常("Questions \(product.info!.range)"
)。
我不知道这是否重要,但导入xliff文件是一场噩梦。 Xcode一直在崩溃,我确信缺少字符串,但最终确实创建了Localizable.strings文件。
更新 :崩溃后我正在使用iPhone 6s(9.3)模拟器。现在我尝试使用iPhone 4s(9.3),它并没有崩溃,但所有变量字符串都是乱码,如:" Preguntas☨^^"而不是" Preguntas 1-50"
答案 0 :(得分:0)
想出来。我必须将所有%s和%d更改为%@。