这个错误是因为在主语言中已经使用了相同的名称。您需要将本地化的名称更改为与主语言中使用的名称不同的名称。例如,在添加英文本地化时,如果主语言是英语,则您应该将本地化的名称更改为其他名称,例如“英语(英国)”或“英语(美国)”。以下是一个示例代码:
let localizations = Bundle.main.localizations.filter {$0 != "Base"}
for localization in localizations {
guard let path = Bundle.main.path(forResource: localization, ofType: "lproj") else { continue }
let bundle = Bundle(path: path)
//use the bundle to access localized resources
}
在这个示例中,我们过滤了主语言“Base”,并迭代了其他本地化。然后,我们使用Bundle对象来访问特定本地化的资源。