例如:
let count: Int = ...
let unit: Calendar.Component = ... //.year, .month, .day
let str = "\(count) \(unit) later"
所以str
可能是其中之一:
//In English
1 year later
3 months later
//In Chinese(Note: The spaces between the words are being removed.)
1年后
3个月后
本地化这个字符串的最好方法是什么?如果unit
部分被删除,我知道如何用stringsdict文件来做,但现在我很困惑。
1条答案
按热度按时间relj7zay1#
stringsdict的使用在这种情况下效果很好。您只需要为每个可能的单元创建一个条目。
英语设置将包括如下内容:
然后你的代码变成这样:
如果您可能有一堆这样的语句,那么为
Calendar.Component
添加一个扩展以从单元创建字符串可能会有所帮助,这样您就不需要到处散布笨拙的switch
语句。